论坛风格切换切换到宽版
  • 8490阅读
  • 2回复

瑞萨新手求助R8C/1B的端口初始化语法问题 [复制链接]

上一主题 下一主题
离线lhr1987
 
只看楼主 倒序阅读 使用道具 楼主  发表于: 2011-04-11
我用的是C语言,我是这样写的初始化语句:
void InitPort()
{
p1 = 0xFF;  
p3 = 0x00;  
p4 = 0x00;      
pd1 = 0x0F;      
pd3 = 0x0F;    
pd4 = 0x02;    
}
编译时说是语法错误,哪位大大可以告诉我原因吗?不胜感激

PS:R8C/1B头文件里面关于端口定义是这样的:
union byte_def p1_addr;
#define    p1            p1_addr.byte
#define    p1_0          p1_addr.bit.b0        /* Port P10 bit */
#define    p1_1          p1_addr.bit.b1        /* Port P11 bit */
#define    p1_2          p1_addr.bit.b2        /* Port P12 bit */
#define    p1_3          p1_addr.bit.b3        /* Port P13 bit */
#define    p1_4          p1_addr.bit.b4        /* Port P14 bit */
#define    p1_5          p1_addr.bit.b5        /* Port P15 bit */
#define    p1_6          p1_addr.bit.b6        /* Port P16 bit */
#define    p1_7          p1_addr.bit.b7        /* Port P17 bit */
/*------------------------------------------------------
  Port P1 direction register
------------------------------------------------------*/
union byte_def pd1_addr;
#define    pd1           pd1_addr.byte
#define    pd1_0         pd1_addr.bit.b0       /* Port P10 direction bit */
#define    pd1_1         pd1_addr.bit.b1       /* Port P11 direction bit */
#define    pd1_2         pd1_addr.bit.b2       /* Port P12 direction bit */
#define    pd1_3         pd1_addr.bit.b3       /* Port P13 direction bit */
#define    pd1_4         pd1_addr.bit.b4       /* Port P14 direction bit */
#define    pd1_5         pd1_addr.bit.b5       /* Port P15 direction bit */
#define    pd1_6         pd1_addr.bit.b6       /* Port P16 direction bit */
#define    pd1_7         pd1_addr.bit.b7       /* Port P17 direction bit */

离线red

只看该作者 沙发  发表于: 2011-04-15
pd1_0 这个是位。你怎么给它赋值BYTE值呢。
只能给它0或者1

楼主C语言功底要加强锕。。
离线lhr1987
只看该作者 板凳  发表于: 2011-04-20
不是吧,我的赋值是pd1=0xFF哦,不是pd1_1=0xFF呀
pd1=0xFF就给p1口所有端口的输入输出状态都定义了啊