找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 732|回复: 4
收起左侧

单片机的程序定义谁帮我解释一下

[复制链接]
ID:72649 发表于 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;
回复

使用道具 举报

ID:752974 发表于 2021-12-14 08:22 | 显示全部楼层
uchar:无符号字符类型;__sbit:这个不知道,可能要看使用的编译器。
回复

使用道具 举报

ID:86926 发表于 2021-12-14 09:00 | 显示全部楼层
__sbit fz1b = sysmode:0;是用sysmode的第0位做fz1b标志位,就是用sysmode的位来立一个flag,:1就是sysmode的第1位,以此类推,定义sysmode的第几位作为一个flag
回复

使用道具 举报

ID:546770 发表于 2021-12-14 09:23 | 显示全部楼层
你这个uchar前面应该是有一行#define uchar unsigned char;语句的,这里是把uchar定义为unsigned char符号类型,所以后面的uchar=unsigned char(无符号字符类型),那个__sbit前面解释过了。
回复

使用道具 举报

ID:887371 发表于 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才能位访问。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表