8051

    0熱度

    1回答

    衆所周知,大多數8051仿真/仿真軟件模擬8051處理器體系結構。 有沒有這樣的工具,它可以在8051處理器體系結構中附加一些額外的指令並做一些模擬和調試代碼。 OR, 如果有這樣做的任何方法,你可以建議,沒有一個工具?

    -1熱度

    3回答

    目前我在液晶屏上遇到了一些問題。我試着做一個倒數計時器,但是當我設置Hour = 0,Min = 1時,sec命中0,我的小時轉向某個未知的字符,min = 59,sec = 59.我錯過了什麼? void Timer1(void) interrupt 3 { TF1 = 0; TH1 = 0xB1; TL1 = 0XE0; cd_msec--;

    1熱度

    1回答

    我以前使用Keil編程8051微控制器。出於某種原因,我必須在SDCC中編寫代碼,但是今天我在編譯器中遇到了非常奇怪的行爲。我正在使用代碼塊IDE 12.11和SDCC 3.4版本。 我在編譯這段簡單的代碼。 #include <mcs51/8051.h> #include "Serial.h" unsigned char digits[5]={0}; void main(void)

    -1熱度

    2回答

    我有幾個例子,除了LABEL概念外,都非常簡單。 示例1本身增加25 10次,而示例2取補充寄存器A 700次。 Example-1: MOV A,#0 MOV R2,#10 AGAIN: ADD A,#25 DJNZ R2,AGAIN MOV R5,A Example-2: MOV A,#55H MOV R3

    0熱度

    1回答

    這不是一項任務,我只是想學習嵌入式C從Arduino中移走。 (基於this interrupt LED example) 我想創建一箇中斷輸入事件計數器。使用連接到P3.2的去抖按鈕開關在LCD上增加一個3位數的數字。 000在啓動時顯示,並且中斷中的觸發LED確實關閉&,但顯示號碼不遞增。我的目標是:推1:顯示001,推2:顯示002等按下重置返回到000. 我認爲問題是用while()。當w

    0熱度

    4回答

    我有一個問題設置日期,星期一和年份。我們知道每2年4月等於29天,其餘爲28天。所以我試着編寫代碼讓程序知道2月的哪一年等於28或29天。 下面是我的代碼,我想問的是,有沒有更簡單和短的方法來做到這一點? void Timer(void) interrupt 1 { if(start_timer == 1) { TF0 = 0; TH0 = 0xB1; TL0 = 0XE0; mse

    0熱度

    1回答

    我有電子卡上的端口(Atmel卡與8051微控制器)。該端口名爲p3_0。端口得到'1'或'0'邏輯。 1 0 1 0 ''''''' '''''''' ' ' ' ' ' ''''''' '''''' And so on.... 我需要使用C爲8051(這實際上是原始的C),並編寫一個代碼,將知道頻率是什麼。最後我需要在字符數組中的頻率,因爲我需要將它打印到僅知道

    0熱度

    1回答

    我正在嘗試編寫C8051F340的設備代碼以通過USB從主機(PC)獲取數據。我從硅實驗室的一些例子,代碼看起來象下面這樣: void Receive_File(void) { ReadStageLength = ((BytesToRead - BytesRead) > MAX_BLOCK_SIZE_READ)? MAX_BLOCK_SIZE_READ:(BytesToRead - B

    5熱度

    1回答

    我試過尋找這個答案,但找不到明確的原因。 我想優化一些8051 C代碼以減少代碼空間。我做了如下改變.. xdata unsigned char a, b; 到 data unsigned char a, b; ...看到我的代碼大小由39Bytes(感覺像聖誕節)減少。 來源:程序大小:數據= 9.0 ...碼= 10509 到:程序大小:數據= 11.0 ...碼= 10468 問:爲

    0熱度

    2回答

    我用MegaWin 8051 MPC82G516A編寫了一個使用Keil C的程序。當我檢查英特爾生成的十六進制文件的文件大小時,它的大小爲8kb(我在二進制代碼窗口中看到了代碼),但是當我使用Megawin的工具編程設備時,它將代碼大小增加到大約29kb! ?任何人都可以提供它爲什麼會這樣做的原因嗎? 另外,奇怪的事情是它似乎是將代碼寫入處理器內存的頂部,而不是在開始時。代碼的起始處有4個字節,