完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
哪个大哥帮我看这段代码是什么意思,STM32f4的!
/通过拼凑的方法向OLED输出一个8位数据 //data:要输出的数码 //8位对应的引脚为PE6/PE5/PB6/PC11/PC9/PC8/PC7/PC6/ void OLED_Data_Out(u8 data) { u16 dat=data&0X0F; GPIOC->ODR&=~(0XF<<6);//清空6~9 GPIOC->ODR|=dat<<6;//D[3:0]-->PC[9:6] GPIO_Write(GPIOC,dat<<6); PCout(11)=(data>>4)&0X01;//D4 PBout(6)=(data>>5)&0X01;//D5 PEout(5)=(data>>6)&0X01;//D6 PEout(6)=(data>>7)&0X01;//D7 } 最后那四行是输出高四位,这我能看明白,但前面那几行我实在看不懂,它用ODR寄存器来输出低四位,它是怎么做到让PC9.8.7.6输出低四位的?哪位大哥帮小弟解释一下! |
|
相关推荐
1个回答
|
|
|
邀请回答
嗨,您好,這幾行就是再輸出低4位喔 u16 dat=data&0X0F; //取得低4位 GPIOC->ODR&=~(0XF<<6);//清空6~9 GPIOC->ODR|=dat<<6;//D[3:0]-->PC[9:6],左位移對應的Register欄位並寫入 GPIO_Write(GPIOC,dat<<6); //左位移寫入GPIO低4位,但這行會將其他位也改動到,這行應該有問題,應該要去掉 以上供參考 |
|
|
|
|
只有小组成员才能发言,加入小组>>
1018 浏览 1 评论
1849 浏览 0 评论
1830 浏览 1 评论
3254 浏览 5 评论
3581 浏览 9 评论
1022浏览 1评论
1850浏览 1评论
如何知道嵌入式电子控制单元 (ECU) 中的RAM使用情况?
1360浏览 1评论
1852浏览 0评论
1178浏览 0评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 06:30 , Processed in 0.450888 second(s), Total 46, Slave 36 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
8520