标题: 单片机的程序定义谁帮我解释一下 [打印本页]

作者: hjx5548    时间: 2021-12-13 21:40
标题: 单片机的程序定义谁帮我解释一下
uchar sysmode=0;
__sbit fz1b = sysmode:0;
__sbit t0zd1b = sysmode:1;

uchar temp1r=0;

uchar jshi1r=0;

uchar js1r=0;
作者: munuc_w    时间: 2021-12-14 08:22
uchar:无符号字符类型;__sbit:这个不知道,可能要看使用的编译器。
作者: 蓝魄    时间: 2021-12-14 09:00
__sbit fz1b = sysmode:0;是用sysmode的第0位做fz1b标志位,就是用sysmode的位来立一个flag,:1就是sysmode的第1位,以此类推,定义sysmode的第几位作为一个flag
作者: 小黑屋525    时间: 2021-12-14 09:23
你这个uchar前面应该是有一行#define uchar unsigned char;语句的,这里是把uchar定义为unsigned char符号类型,所以后面的uchar=unsigned char(无符号字符类型),那个__sbit前面解释过了。
作者: datouyuan    时间: 2021-12-14 09:46
本帖最后由 datouyuan 于 2021-12-14 09:56 编辑

uchar用于定义字节变量。类似于51mcu的sfr
__sbit 用于定义位变量。类似于51mcu的sbit

假如sysmode是51mcu的P0端口,那么fz1b为P00,t0zd1b为P01.

这种定义估计是用于microchip的单片机。义隆等mcu都是仿制microchip的。这种芯片有个特点是所有ram都能位访问.e而51只有很少的特定的ram才能位访问。






欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1