请教单片机高手下面这段程序哪里错了?一直报错说uchar附近有语法错误

作者&投稿:藩耐 (若有异议请与网页底部的电邮联系)
单片机C语言 void SPI_Write(uchar dat)中的uchar dat什么意思,在程序中没有定义它,为什么还能用?~

uchar dat 说明参数dat是无符号字符型,前面应该有过宏定义

这是凌阳61单片机的程序。

子程序调用时不能加uchar等
void writeddata(uchar l,uchar y,uchar dat)
{ uchar l,y,dat;
writedadd(l,y); //此处去掉uchar
delayms(1);
writedat(dat); //此处去掉uchar
}
还有你的l,y,da使用前没有赋值,也会报错的

你的uchar 定义了吗?


请各位高手回答一下下面的单片机程序问题!谢谢!
若晶振频率Fosc=12MHz,机器周期 = 12\/Fosc = 12\/(12x10^6Hz) =1μs 执行 DJNZ Rn, rel 指令耗用2个机器周期,即2μs 该段程序执行该类指令总次数=250x200x10=500000 耗用时间 = 500000x2μs = 10^6μs =1s 若改为延时0.1 第三行指令改为 LOOP1: MOV R1, #01 若改为延时0...

单片机高手来帮我解释这个程序
ORG 30H HA1S: MOV A,#00H ;累加器A清0 HA1S1: JB P3.5,HA1S1 ;等待按键 MOV R2,#10H ;R2=10H LCALL DELAY ;延时 JB P3.5,HA1S1 ;按键有效继续,无效转HA1S1 HA1S2: JB P3.5,HA1S2 ;等待按键 MOV R2,#10H ;R2=10H LCALL DELAY ;延时 JNB P3...

单片机问题 希望各位高手教我下
本人不专业,个人认为没有冲突。理由如下:定时1秒到达时间后产生定时中断,程序自动跳往定时中断子程序执行该子程序,此子程序里有2秒延时也必须是执行完后才算定时中断程序执行完毕而退出中断。

单片机编程题 有几个题做不出来!!求高手
第1题:mov dptr,#2020h movx a,@dptr xch a,20h movx @dptr,a 第2题:mov a,30h swap a mov r0,31h xchd a,@r0 swap a mov 30h,a 第3题:mov dptr,#2500h movx a,@dptr push a pop 40h 第4题:mov r0,20h mov dptr,#1000h mov 07fh,#16 loop:mov a,@r0 movx @dptr...

单片机高手请进……用以下程序控制8个发光二极管,hex文件烧录成功后二极 ...
C语言学的不怎样啊,return用在所在函数的函数名的前边不是void的时候,void delay(z)这个延时函数前边是void,所以用不着return。你这个程序是P1口8个I\/O开始输出0,然后延时后输出1。、¥¥¥ 下边是引用的另外一个知道里边的答案,可以参考 return是个好东西 第一个作用,也就是他的真实作用 返...

求单片机高手帮我逐句解释一下这个程序 谢谢了
include<reg52.h> \/\/字头,表示如果涉及到的函数从这两个后缀名.H的文件里调用。include<intrins.h> define uchar unsigned char\/\/方便定义函数无符号型应该用UCHAR表示为方便直接用CHAR表示了。define uint unsigned int\/\/整形同上解释 sbit clock=P1^0; \/\/定义CLOCK接到单片机P0_1口,请注意这里用...

请教单片机高手,关于TLC549数据处理的问题~~
1,0,0,0,1,0,0 首先接收的是最高位0 因为是0 所以不执行+1 之后temp像左移动一位 下面接收的是1 temp就+1 这时temp的值是00000001 注意 1前面的那个0是最高位0 依次循环就得到了 temp=01000100也就是0x44 你的那个程序进入for循环读的是余下7位数据 并不是8位 ...

请教高手 为什么下面这段程序只能运行一遍就卡住了,必须复位才能在工作...
第114行 distance=0;分号就用错了,程序太长了,头文件也没有

急求单片机高手指点...如何通过串口接收一组字符串,然后判断这组字符串...
下面提供一个思路,供参考:void UART() interrupt 4 { RI = 0;recive[i] = SBUF;i++; \/\/ i 加到一定数值,就应该从 0 开始了。\/\/下面,根据字符串的内容,分别进行处理:if(recive[0] == '0' && recive[1] == '0' && recive[2] == '1') { P2=0x01;P1=0x02;P0=0x...

单片机入门,急求高手大虾指教!!!
仅仅做了一个单片机的应用设计就拿到硕士文凭了,术业缺乏专攻泛泛而谈,说句实在话,怎么样也教人无法...对于这个问题当然是仁者见仁智者见智,也就是下面我要讲到的问题,一个人如何根据自己的特点、条件和...方法二、你身边如果有单片机方面的高手,向他求助,让他帮你搭个简单的最小系统板。对于高手来说,做...

兰州市19264543048: 刚接触单片机 编的程序有一个错误找半天找不出来啊 高手帮忙看看下面程序是哪儿错了 啊 急急急~ 感激不尽 -
汉寇依星: 第三行的警告是因为没有声明init()函数,需要在main函数之前声明一下.第六行的错误是因为“flag_10ms”在使用前没有声明,需要在使用之前声明.同样下面的“flag_10ms”也是这个原因.另外我看“flag_20ms”也没有声明

兰州市19264543048: 下面这段程序下到单片机开发板上,数码管没有显示,哪里出错了? -
汉寇依星: 你好! 重点检查段驱动和位驱动的端口是不是对应上了

兰州市19264543048: 请单片机编程高手来帮我看看错在哪里了? -
汉寇依星: main() { delay1m(10); while(1) { display(...

兰州市19264543048: 单片机8位流水灯 代码哪里错了 求达人指点!! -
汉寇依星: #include#include#define uint unsigned int#define uchar unsigned charuchar a;void delay(uint);void main(){ a=0xfe; P0=a; wh...

兰州市19264543048: C语言单片机程序 初学大家帮忙看看错在哪里了 #include <reg51.h> void main() { while(1) { P1=0x55; } } -
汉寇依星: C语言单片机程序 初学大家帮忙看看错在哪里了 #include void main() { while(1) { P1=0x55; } }程序百分百没问题,可能是编译的有问题,你 用的是keil编译的吗? 建议你多重新编译一下, 也有可能是...

兰州市19264543048: 51单片机c语言程序!请高手帮我看一下,哪里错了!
汉寇依星: while(1) { temp=0; //采样值存储单元初始化为0 temp =rCount(); j=temp%10; //取ADC值最后一位 P0=display[j];//取显示数据,段码} 没有看到延时,即使结果不停变化的话,点亮数码管之后要延时,不然变化速度太快,只能看到8

兰州市19264543048: 哪位大侠帮忙看一下这段程序那里错了,谢谢烧录到单片机不执行while下的语句 -
汉寇依星: 你的延时函数定义的和声明的都不一致,相当与延时函数没定义...

兰州市19264543048: 关于单片机程序,提示错误“2.C(66): error C141: syntax error near '}'”求帮忙看一下哪里错了,谢谢. -
汉寇依星: #define uint unsigned uint 定义错误,嵌套了,unsigned int void delay(z),参数没有类型 a++;这个变量没有定义

兰州市19264543048: 单片机 在写程序的时候出现了这样的错误 想问一下是哪里出现了错误 -
汉寇依星: WARNING L15: MULTIPLE CALL TO SEGMENT 在第十五行时有多个调用

兰州市19264543048: 单片机程序哪里错了,还有定时器中断返回后,程序往哪执行 -
汉寇依星: #include <reg52.h> sbit LED=P0^0; void main () {LED=0; TMOD=0x01; TH0=0x00; TL0=0x00; ET0=1; EA=1; TR0=1; while(1);//超级循环 } void timer0 (void) interrupt 1 { LED=1; } 对于单片机程序来说,必须含有一个无线死循环的,所以你还必须添...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网