sincomaster 发表于 2018-8-1 17:46:10

请教STM8S位操作的问题.谢谢

本帖最后由 sincomaster 于 2018-8-4 09:00 编辑

看到别人可以进行位操作,我自己试却有错误,请知道的坛友回下,谢谢

别人的示例可以这样写:
PB_CR1_C11 = 1;
CLK_CCOR_CCOEN = 1;

我包含了stm8s.h也不行,提示左值错误.

请问要包含哪些文件才可以呢,还是哪里设置不对??????

谢谢大家了.

stm1024 发表于 2018-8-1 18:50:11

stm8的位操作我没试过,不过stm32的我倒是用过。
你可以试试跟踪到CLK_CCOR_CCOEN 的declaration,看看它是用户自定义的,还是在某个头文件中包含的?

wenyangzeng 发表于 2018-8-1 19:22:30

stm1024 发表于 2018-8-1 18:50
stm8的位操作我没试过,不过stm32的我倒是用过。
你可以试试跟踪到CLK_CCOR_CCOEN 的declaration,看看它是 ...

应该是楼主粗心了:这个PB_CR1_C11 = 1;
应该是:
PB_CR1_C1 |= 1;
不是11呀。那个布尔运算符“|“怎么能看成数组”1“呢?

sincomaster 发表于 2018-8-1 23:24:35

wenyangzeng 发表于 2018-8-1 19:22
应该是楼主粗心了:这个PB_CR1_C11 = 1;
应该是:
PB_CR1_C1 |= 1;

谢谢回答,STDBOOL.H是我想看是不是少加了,C11我没写错,请看下方的RM0016
C:\Users\sinco\Desktop\2018-08-01_231846.png

sincomaster 发表于 2018-8-1 23:31:27

本帖最后由 sincomaster 于 2018-8-1 23:32 编辑

stm1024 发表于 2018-8-1 18:50
stm8的位操作我没试过,不过stm32的我倒是用过。
你可以试试跟踪到CLK_CCOR_CCOEN 的declaration,看看它是 ...
谢谢新手还不明白什么是跟踪到CLK_CCOR_CCOEN 的declaration,
不明白别人有这样用,我怎么就用不了,stm8s.h 内有定义的呀

feixiang20 发表于 2018-8-2 01:39:15

自定义一般这样吧
      PC_DDR_DDR1=0;//S_Tx
PC_CR1_C11=1; ////PULL-UP-INPUT
PC_CR2_C21=0; //
      //S_Rx
PC_DDR_DDR1=0;//S_Rx
PC_CR1_C11=1; ////PULL-UP-INPUT
PC_CR2_C21=0; //
//S_BW10
PA_DDR_DDR1=0;//
PA_CR1_C11=1; ////PULL-UP-INPUT
PA_CR2_C21=0;

//S_BW62
PA_DDR_DDR2=0;//
PA_CR1_C12=1; ////PULL-UP-INPUT
PA_CR2_C22=0;

//S_BW125
PB_DDR_DDR3=0;//
PB_CR1_C13=1; ////PULL-UP-INPUT
PB_CR2_C23=0;

//S_FSK
PB_DDR_DDR7=0;//
PB_CR1_C17=1; ////PULL-UP-INPUT
PB_CR2_C27=0;
}

sincomaster 发表于 2018-8-2 08:50:32

feixiang20 发表于 2018-8-2 01:39
自定义一般这样吧
      PC_DDR_DDR1=0;//S_Tx
PC_CR1_C11=1; ////PULL-UP-INPUT


大神,这样写要包含什么头文件呀,我的为什么会报错呢,请您回复一下,谢谢啦

wenyangzeng 发表于 2018-8-2 09:27:16

sincomaster 发表于 2018-8-1 23:24
谢谢回答,STDBOOL.H是我想看是不是少加了,C11我没写错,请看下方的RM0016

如果要置位PB_CR1的D1位,应该是PB_CR1 |=0X02。

skyi 发表于 2018-8-2 09:29:07

首先,看你的贴图宏定义的是常量,楼主你这么写肯定出错,应该是找宏定义是指针类型的寄存器来配置。

toofree 发表于 2018-8-2 10:07:26

本帖最后由 toofree 于 2018-8-2 10:09 编辑

没这么玩的吧,

位是这么操作的


看一下,这个是怎么定义的。不可能给宏定义的常量赋值吧




页: [1] 2
查看完整版本: 请教STM8S位操作的问题.谢谢