8051

    0熱度

    1回答

    我正在爲80C51芯片編寫軟件,並且當我聲明2個64字節的數組時,我突然給我一個錯誤代碼254.含義我用我所有的內存。 該芯片所謂的外部存儲器,但我不知道如何使用它。我在mcu 8051 IDE中用C編寫它。我嘗試在變量前輸入'far'和'xdata',但那不能編譯。 我必須包含一個單獨的頭文件嗎?

    0熱度

    1回答

    我的項目是:讀取溫度並通過SMS以10分鐘的時間間隔發送,並且在此範圍內運動,然後發送短信「MOTION DETECTED」。 如此,只是爲了測試我用了兩個LED一個溫帶(它將停留在10分鐘),SMS和其他的運動(它將閃爍一次)和評論功能的調用語句即的sendMessage,SENDMSG 一切工作正常,但問題是「當我長時間持續晃動我的手在PIR傳感器前面時,它持續檢測運動並且可能是計數器不會增加

    0熱度

    1回答

    我想弄清楚是否有一種簡單的方法來一次修改8051端口的幾個位。 我會重新解釋我的困境更具體的風格。 我的應用程序有端口2分爲兩個功能。我們稱他們爲FA和FB。 FA依賴於低三位的輸出值,而FB依賴於剩餘的5位,但它們可以是I/O。 因爲FB中的一位是控制時鐘的輸出位,所以當我修改FA時,我不想修改FB的任何部分,反之亦然。 以下種類的命令不會爲我工作: mov P2,#07h mov P2,#8

    2熱度

    1回答

    我需要在8051微控制器中重命名RAM的位尋址位置。 我用IDA Pro來反彙編二進制文件,並輸出結果如下: clr RAM_29.3 clr RAM_29.7 clr P1.5 我可以重新命名端口P1或內存RAM_29,但我怎麼可以重命名這些變量的每一位?是否有可能在IDA Pro反彙編做這樣的事情: (clr TXpin) ,而不是 (clr P1.5) ------- (

    0熱度

    1回答

    有任何軟件方法可讀取8051 uC端口2上空引腳的狀態。我的意思是我需要在8051的未連接引腳上讀0。我的8051版本沒有內部上拉電阻。此外,我無法進行任何硬件更改。

    0熱度

    1回答

    我現在的問題是,自從我啓用中斷後,程序停滯在無限循環中。如果我禁用中斷,那麼程序正常執行。 我甚至確保我通過將函數推入堆棧並在函數退出時彈出它們來保護函數中的寄存器(變量),但這並沒有幫助。 我甚至採取了甚至用iret替換函數名(以退出中斷),我仍然面臨同樣的問題。 我現在解決問題的唯一方法是通過不執行mov TCON,#50h來禁用中斷。這讓我認爲在互聯網上發佈的中斷向量地址是不正確的,而實際上

    0熱度

    1回答

    這是我當前有的代碼,當按下按鈕時應該檢測到這些代碼。如果我創建函數,比如我調用同步按鈕函數(getkeysync)的firstmenu函數,那麼程序將工作並返回正確的密鑰。但是,如果我嘗試了異步路由(通過getakey)並遵循此示例,並在程序啓動後約100毫秒按「右鍵」運行它,那麼無論我按住多少鍵,第二個菜單的選項被跳過,然後執行menuthree功能。 我明白menuone,menutwo,me

    0熱度

    1回答

    雖然與簡單Studio和Silabs公司EFM8BB3(8051基於SoC)的工作,我觀察到一個巨大的暫停(最多到60毫秒)一個非常低的傳輸速率之間每個字節傳輸以及i2c協議上的完整信息(通過smbus主接口)之間(最多160毫秒)。 爲什麼傳輸速度這麼慢,是有什麼我可以做些什麼來解決這個問題?

    2熱度

    1回答

    我訪問了一些鏈接並查找了I2C編程的一些示例程序。我想寫我自己的I2C協議代碼。假設DS1307 RTC和LCD連接到8051.我正在使用Keil軟件編寫一個C程序。這是非常難寫I2C的整個程序我,所以我試着在小零件打破程序: 模塊1:定義和設置用於LCD和DS1307 RTC 模塊2引腳:用於編寫C代碼DS1307(使功能DS1307例如讀,寫) 模塊3:寫LCD C代碼(數據,命令初始化等)

    -2熱度

    1回答

    我想在特定行列中顯示字母16x2液晶屏顯示屏8051MCU。例如: Display "R" at 2nd column in first row Display "W" at 3rd column in second row 我使用這些例程用於LCD: #include<reg51.h> /* Data pins connected to port P1 of 8051 */ #def