[STM8] STM8如何定义端口?我想像51那样用sbit test=p1^0;我用的是IAR软件

[复制链接]
5450|7
 楼主| pidan678 发表于 2015-2-11 22:21 | 显示全部楼层 |阅读模式
STM8如何定义端口?我想像51那样用sbit test=p1^0;我用的是IAR软件

_Bool  test   @PC_ODR:3;  说没有定义PC_ODR

yiwang1011 发表于 2015-2-12 08:28 | 显示全部楼层
有封装好的函数可以用。
无脑达人 发表于 2015-2-12 09:17 | 显示全部楼层
你要自己导入IAR文件里的"IOSTM8XX.H",里面有各寄存器的定义,每个寄存器也会有位定义的,端口如PC_ODR_3=1,STM8有直接的位操作指令,不过如果是自己定义的标致还是用字节的与非操作比较好,方便移植到C51,STM8的字节(判位操作)与非操作变成它自己变成汇编也是位操作的。
 楼主| pidan678 发表于 2015-2-14 14:50 | 显示全部楼层
yiwang1011 发表于 2015-2-12 08:28
有封装好的函数可以用。

在哪个函数里?可以说明白点么  GPIO里没有
周董 发表于 2015-2-14 19:30 | 显示全部楼层
这个我之前用过,现在不是很清楚了呀
戈卫东 发表于 2015-2-14 19:39 | 显示全部楼层
IAR提供的像“iostm8s103f3.h”这样的头文件已经给出了用一个BIT的定义,可以直接用,也可以自己再用宏把名字变变。。。

不过IAR的位操作真的是很让人失望啊,一条指令可以搞定的操作它硬是用了N条指令。。。。。。
 楼主| pidan678 发表于 2015-2-14 22:48 | 显示全部楼层
戈卫东 发表于 2015-2-14 19:39
IAR提供的像“iostm8s103f3.h”这样的头文件已经给出了用一个BIT的定义,可以直接用,也可以自己再用宏把名 ...

iostm8s103f3.h”在哪里加,我一直用的库函数,加的都是stm8s.h之类的头文件   初学不懂,还请明示,非常感谢
戈卫东 发表于 2015-2-15 01:10 | 显示全部楼层
pidan678 发表于 2015-2-14 22:48
iostm8s103f3.h”在哪里加,我一直用的库函数,加的都是stm8s.h之类的头文件   初学不懂,还请明示,非常 ...

你既然用的是IAR,那么应该可以在它的安装目录-----子目录找到。。。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

223

主题

404

帖子

5

粉丝
快速回复 在线客服 返回列表 返回顶部