完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
我应用的单片机是Atmeg16,在一本书上我看到对某一端口赋值8位二进制数,
void HC164_send_byte(unsigned char byte) //这里写的是一个串口扩展的发送函数 { unsigned char i ; for (i = 0;i<=7;i++) { PORTA.0 = byte & 1 << i //这是什么意思呢,一个八位的char类型的数值赋值给某一个端口,它是怎样工作的呢?还请哪位高手给解释一下,在此谢过! } } |
|
相关推荐
4个回答
|
|
|
这个程序是串口传输一个8位的无符号数,低位开始传输。“<<”左移的优先级比“&”与的优先级高,以此先执行 1<
|
|
|
|
|
|
补充一下,(byte & (1 << i ))为0时PORTA.0端口输出0,非0时输出为1,以此实现串口输出。
|
|
|
|
|
|
2楼正解,如果LZ还不解,你应该去看一下串口通信,了解了串口是怎么送发数据了,那应该就清楚了,原理就重要,了解了原理,学习起来就容易多了
|
|
|
|
|
|
谢谢各位的点播 ![]() |
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
【瑞萨RA6E2】瑞萨E2S软件安装过程,等待过程玩下97_e2 studio_ZGZZ
140 浏览 0 评论
483 浏览 0 评论
【原创】【RA4M2-SENSOR开发板评测】低功耗+USB综合测试
815 浏览 0 评论
1346 浏览 2 评论
804 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
16903 浏览 31 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 16:47 , Processed in 0.634771 second(s), Total 75, Slave 59 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
1949