微控制器開發串列埠通訊,傳送字元1 9接收出問題

2021-09-11 01:59:46 字數 561 閱讀 9659

問題是,我希望使用串列埠除錯助手,傳送0-9的數字,控制燈的亮度。但是傳送過去,程式無法讀出資料。

部分**如下:

#include#define uint unsigned int

#define uchar unsigned char

sbit led=p2^0;

sbit l1=p2^1;

sbit l2=p2^2;

sbit l3=p2^3;

uint num,mce;

。。。。,,,,。。。。

。。。。。。。。。。。。

void timer0() interrupt 1

else

num++;

if(num==10)

if(num==mce)

}

void usart() interrupt 4

解決:

串列埠通訊時,sbuf接收的資料都是十六進製制,要轉化為十進位制,再進行使用。我是直接減去了0x30進而解決的。

解決問題的關鍵鏈結 

微控制器利用串列埠通訊傳送溫度

該程式主要是利用ds18b20採集溫度,然後通過數碼管顯示溫度 當程式收到上位機傳送的命令之後,該程式會將當時的溫度值通過串列埠傳送給上位機 include define uchar unsigned char define uint unsigned intsbitdq p1 0 定義ds18b2...

微控制器串列埠通訊

微控制器串列埠通訊 通常的usb序列通訊方式為全雙工,即兩條資料線 rxd和txd,一條用於傳送資料,一條用於接收資料。在序列通訊前,需要對序列通訊進行配置。對於微控制器 ri為接受中斷標誌位,未通訊時ri 0 當電腦傳送第乙個位元組幀a0到微控制器時,sbuf a0,中斷標誌位ri 1,微控制器呼...

微控制器串列埠通訊

1 需求 實現電腦端控制微控制器開啟燈光風扇,顯示微控制器傳遞過來的資料 如溫度 濕度等 2 工具 平台軟體 驅動人生 vs2012 keil4 3 下面就開始吧 4 檢視我們當前的通訊埠號 如圖 然後確定我們微控制器的晶振,我是用的是11.0592m的 即9600 差不多我們就可以開始我們的開發了...