会如何把程序烧进单片机机的进,跪求帮助

做单片机用到WEB控制。。跨界的,所以这个问题应该很简单。求帮助
[问题点数:40分,结帖人xsh6528]
本版专家分:0
结帖率 50%
CSDN今日推荐
本版专家分:5375
本版专家分:24782
本版专家分:0
匿名用户不能发表回复!|
其他相关推荐郭天祥书上的51单片机串口通迅请求大神帮助指点 - 单片机/MCU论坛 -
中国电子技术论坛 -
最好最受欢迎电子论坛!
后使用快捷导航没有帐号?
郭天祥书上的51单片机串口通迅请求大神帮助指点
16:48:58  
本帖最后由 eehome 于
10:09 编辑
仿真图片.JPG (138.9 KB, 下载次数: 1)
51单片机串口通迅
16:43 上传
这些是我买的郭天祥的书上,关于串口通信的一个实验,这实验,为什么 我发送一个任意字符,却返回任意字符,而不是&I get &?
#include&reg51.h&
#define uchar unsigned char
#define uint unsigned int
uchar flag,a,i;
uchar code table[]=&I get &;
/****晶振为11.0592MHz,波特率为9600******/
void init()
TMOD=0x20;
void main()//程序烧入51单片机后,单片机从main()进入主程序
& &init();//---初始化串口
& &while(1)//单片机进入while()大循环
& &&&if(flag==1)/*单片机上电后,是先执行本程序最后面的中断子程序
void ser() interrupt 4,还是先判断flag==1这个条件?
& &我的理解中,应该先判断if()中的flag==1这条件。可是本人又很不明
白:如果先判断if()函数中的条件flag==1的话,那这个flag定义时并没有赋值给它呀!所以
我们对它的值也就不知道是0还是1。
& &如果是0则进不去if()函数;如果是1,那这个1是哪个给它的?是最后面的串口中断程序void ser() interrupt 4
赋给它的?我想不是吧?书上不是说main()是唯一的入口么?
& &所以单片机一上电后,应该是先判断if()中的条件,所以我想请问一下高
人,单片机一上电,是先等待我们输入随便一个字符,它把此字符存入SBUF
然后产生接收中断RI=1?产生中断后进入中断程序使flag置1?然后进入程序的
if(flag==1)?*/
& && && & ES=0;//关闭串口中断
& && && & for(i=0;i&6;i++)
& && && &&&{
& && && && & SBUF=table;/*这里应该将&I get &发到&串口调试助手&去的啊,
可是我仿真却并没有出现&I get &,不知道怎么回事?*/
& && && && & while(!TI);
& && && && & TI=0;
& && && &&&}
& && && & SBUF=a;
& && && & while(!TI);
& && && & TI=0;
& && && & ES=1;
& && && & flag=0;
void ser() interrupt 4
---------------原因在哪呢?为什么返回的不是&I get &呢?搞了都快一天了,还是找不出原因,这个程序的执行顺序也不是很清楚,是不是这个程序本身有问题?我的QQ是,盼高人指教!
18:11:52  
22:58:37  
你在串口上面看到应该不是只有你发送的字符&&应该还有东西 建议你看一下你接收了多少字节
23:45:51  
SBUF=table[i];
12:14:53  
SBUF=/*这里应该将&I get &发到&串口调试助手&去的啊,
可是我仿真却并没有出现&I get &,不知道怎么回事?*/
table是什么??是数组名。
12:56:17  
高级工程师
14:22:39  
& && && & for(i=0;i&6;i++)
& && && &&&{
& && && && & SBUF=table[i];& && && &&&
& && && && & while(!TI);
& && && && & TI=0;
& && && &&&}
22:15:29  
如果你用串口调试助手,接受区,也应该设置成字符格式吧!
00:08:46  
SBUF=table[i]
12:15:53  
高级工程师
19:33:01  
1、线连错了,RXD与TXD交叉连接;
2、SBUF=table[i],一个一个的发;
03:39:19  
单片机中的SBUF是一个字节的缓存,不是一个指针。所以
SBUF=table是不对的,应该像11后说的那样一个一个的发送。
11:57:29  
ddddddddddddddddd
助理工程师
10:22:56  
<font color="#htech 发表于
SBUF=/*这里应该将&I get &发到&串口调试助手&去的啊,
可是我仿真却并没有出现&I get &,不知道怎 ...
table[]={};这个是数组,如果是单字符就用‘字符’双字符就用“字符码”这里不用大括号。
11:09:55  
17:07:01  
08:01:15  
21:17:09  
都是高手&&新手上路 多多关照哦&&
21:19:50  
各位大神 平时怎么学的啊?
助理工程师
09:15:52  
Powered by
供应链服务
版权所有 (C) 深圳华强聚丰电子科技有限公司跪求帮助_2个月宝宝辣妈帮_雷速体育发帖软件开发QQ
欢迎加入我们,一同切磋技术 &
用户名: &&&
密 码: &
共有 1756 人关注过本帖
标题:本人初学单片机,求大神帮看下这个工程编译时哪出了问题,文件单独调试的时 ...
等 级:新手上路
结帖率:100%
&&已结贴√
&&问题点数:20&&回复次数:9&&&
本人初学单片机,求大神帮看下这个工程编译时哪出了问题,文件单独调试的时候是可以的
解决完问题我发红包,
附件: 您没有浏览附件的权限,请
搜索更多相关主题的帖子:
等 级:版主
威 望:248
帖 子:5598
专家分:31675
编译时哪出了问题哪里出问题,编译器会告诉你的呀。
你不贴出编译器给出的错误信息,别人有个屁办法呀
等 级:新手上路
回复 2楼 rjsp
不是上传了附件吗,整个工程在里面了呀
等 级:新手上路
Build target 'Target 1'
compiling keyscan.c...
compiling main.c...
SRC\NIXIE TUBE_DYNAMIC SCAN.H(1): warning C323: newline expected, extra characters found
compiling nixie tube_dynamic scan.c...
linking...
*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
&&& SYMBOL:&&_DELAY
&&& MODULE:&&nixie tube_dynamic scan.obj (NIXIE_TUBE_DYNAMIC_SCAN)
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
&&& SEGMENT: ?PR?_DISPLAY?NIXIE_TUBE_DYNAMIC_SCAN
Program Size: data=16.0 xdata=0 code=492
Target not created
等 级:新手上路
我初学,看不懂它的错误提示,这是第一次采用多文件模式,以前都是一个文件一个文件的编
等 级:贵宾
威 望:52
帖 子:1381
专家分:5752
&&得分:10&
void delay(uchar x)
定义了两遍
等 级:新手上路
回复 6楼 grmmylbs
void delay(uchar)
这个函数是在两个文件里面啊,我又没把它定义为外部函数怎么会互相影响呢。
不是文件内的函数自行封闭么
等 级:贵宾
威 望:52
帖 子:1381
专家分:5752
但最终你是要链接到一起的吧?除非两个.c分别编译且不链接到一起。
等 级:新手上路
回复 8楼 grmmylbs
那万一一个工程由不同的人写文件,不同文件间出现重名函数的几率不是很大?这个怎么解决呢平时在工程中
等 级:贵宾
威 望:52
帖 子:1381
专家分:5752
在工程中命名就要按模块来命名,不能用大众化的名字。
收到的鲜花
附言:我很赞同
版权所有,并保留所有权利。
Powered by , Processed in 0.045345 second(s), 9 queries.
Copyright&, BCCN.NET, All Rights Reserved}

我要回帖

更多关于 单片机接歩进电机 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信