微控制器的鍵處理函式為什麼要往微控制器p1口送取反??
1樓:匿名使用者
開發板上應該要有流水燈,矩陣鍵盤,數碼管或者液晶,以及一些感測器,這些基本的東西,學習使用它們,能使你快速上手。51微控制器,一般都在10rmb以下,開發板不是隻看微控制器的**,外接的元器件,有的也很耗rmb啊!比如接個12864液晶,現在大概50rmb左右。
如果你想省錢,那就讓別人給你搭個電路,去買些電子元件,個把小時就能搞定,然後基本就是每天實驗,有什麼不會了,在看書,查資料。但我建議還是買個開發板,不要功能太多,只要有那些普通的東西就行,因為自己搭的電路,對於硬體上的問題,有時候會使你很頭疼。學微控制器,你至少手頭得有乙個塊開發板,這是必須的,沒有硬體,想學好微控制器,就是空談。
看不看**教程並不重要,重要的你要先弄懂,用什麼下程式(軟體和硬體),給你一段程式,你能不能正確的把它下進微控制器,程式設計的軟體怎麼使用。有了這基本的東西,就開始寫最簡單的c程式,當程式down進去,看不到現象,那就開始找錯誤,然後在改,這樣反覆進行,慢慢的你就會喜歡上微控制器的。個人的經驗,我學微控制器的時候也沒看過**,看理論方面的書籍,最多也不超過5天。
另外,站長團上有產品**,便宜***。
2樓:做而論道
樓主怎麼會有這樣的問題?
3樓:網友
不知道你的硬體電路和軟體是怎麼寫的,如果p1是讀取鍵值的埠的話,那麼準雙向口讀取之前需要向外部寫1,之後再讀才能可靠讀出埠狀態,你可以從這個角度考慮一下。
c語言微控制器程式,求指點 test.c(3): error c231: 'p1': redefinition是怎麼回事?把p1放在main函式就沒錯
4樓:匿名使用者
p1=0xff;
這是一條賦值語句,不能放在函式體外面,你放到任意乙個函式體內都是可以的,呵呵!
函式體外你可以定義變數,可以在定義變數的同時賦初值,可以宣告變數,但你不可以直接寫這種賦值語句。
微控制器p1——p3口作為輸入口的時候 為什麼要先向該口寫1呢?
5樓:德昂當
p1口可輸入可輸出。
p1口作為輸入口, 怎麼作為?
哪條指令讓它作為輸入口,怎麼樣才能讓它作為輸入口,光靠我們想像行嗎?
有的微控制器,會有個暫存器,設定io口是輸入還是輸出,但這個沒有。
那這個怎麼讓它成為輸入或者輸出呢。
每個口上都有乙個鎖存器,鎖住之前寫的值。
比如,口上只是接乙個上拉電阻,這個口作為輸入應該是高電平吧。
那你往口裡寫乙個0,口會輸出0,這個口就成了低電平了。
此時,你讀這個io口,也會是低電平。
如果不改寫為1,鎖存器內就一直是0,也就是輸出0 ,程式讀這個口上的電平也是0。
改寫為1後,這個口上的電平才會1,或者說,不會把這個口拉低。
作為輸入口時,要事先寫1,也可以不用每次都寫,只要裡面不是0就成。
那個掃瞄鍵盤的,賦值,0xfe就相當於,把p1口的高7位都寫了1,最低位寫0,也就是p10輸出0,然後讀高4位,看有沒有按鍵。接下來,0xfd是p11輸出0,也是讀高4位,看p11那一排的有沒有按鍵。
這都寫了1的,不是p17=1才叫寫1,p1=0xfe 整體賦值也是寫1。往你想讀的口寫1就行。
6樓:網友
這是由於p1~p3口的結構決定的。微控制器執行讀引腳操作時,如果鎖存器原來寄存的資料q=0,那麼由於非q=1將使v導通,引腳會被鉗位在低電平,此時即使外部電路的電平為1,讀引腳的結果也是0.
因此p0~p3口作為輸入口時要先寫1
7樓:網友
問題很簡單,要說清不容易,原因是p0~p3都是準雙向口,為什麼呢?這要看四個並口。
的口結構圖就明白了。
什麼叫準雙向,就是說p0~p3輸出沒問題,輸入就不然了。就象我們常見的門,朝外開,沒有拉鎖,用一節彈簧拉著。出去是一頂門就開了,進來的時候,無論如何要伸手拉一下門。
這個拉門的動作就是向px口先寫1。
目的是使場效電晶體。
被鉗位在低電平的漏極與源極截斷。使輸入的電平訊號能正確的被微控制器。讀出。
8樓:乙隻小白兔啦
按鍵有兩種觸發,一種是低電平觸發,一種是邊沿觸發,這兩種觸發都在高電平的前提下,所以要賦值為1。這個1並不是你所想的賦值,只是構成一種觸發條件。
為什麼微控制器工程師要會ARM,為什麼微控制器工程師要會ARM
my百註冊度 因為arm架構的微控制器在應用市場上佔有很大的份額,很多公司生產的產品用到它。 arm是微控制器的高階版,現在一般都arm做東西,微控制器的已經不夠用了 你應聘的是微控制器軟體工程師吧.一般比較好的公司都是用高階晶片 arm 做嵌入式的 這個是 你對 微控制器 arm 這兩個名詞理解不...
為什麼微控制器輸出低電平時燈會亮,微控制器的第一個實驗為什麼輸入高電平的時候Led燈不亮,而要輸入低電平才會亮啊
無人機 燈亮是因為兩側有電壓差,led是一般0.7v左右,是有高電平減低電平組成的電壓差 1共陽極接法 當led陽極接電路板上的高電位,陰極接微控制器引腳,微控制器引腳輸出高電平,沒有電壓差,燈不亮 微控制器引腳輸出低電平,有電壓差,燈亮。你所說的情況 2.共陰極接法 當led陰極接電路板上的低電位...
關於微控制器的問題,高手看看為什麼下面這個程式沒有用
呵呵 俺來幫你解決 1 你設計的定時器是採用的迴圈查詢方式來判斷定時時間是否到,你的程式與中斷無關。2 錯誤是查詢的狀態位tf0 1 表示定時時間到所以在程式中的while tf0 0 應該改為while tf0 1 呵呵 趕快再試一試吧 對了就給俺加分啊 你沒有開ea 1和et0 1 這個是開總中...