#include
#include
sfr IAP_CONTR = 0xC7;
sbit MCU_Start_LED = P1^7;
//unsigned char self_command_array[4] = {0x22,0x33,0x44,0x55};
#define Self_Define_ISP_Download_Command 0x22
#define RELOAD_COUNT 0xfb //18.432MHz,12T,SMOD=0,9600bps
void serial_port_initial();
void send_UART(unsigned char);
void UART_Interrupt_Receive(void);
void SOFt_reset_to_ISP_Monitor(void);
void delay(void);
void display_MCU_Start_Led(void);
void main(void)
{
unsigned char i = 0;
unsigned char j = 0;
unsigned char idata *idata_point;
serial_port_initial(); //串口初始化
// display_MCU_Start_Led(); //點亮發光二極管表示 單片機 開始工作
// send_UART(0x34); //串口發送數據表示 單片機 串口正常工作
// send_UART(0xa7); //串口發送數據表示 單片機 串口正常工作
idata_point = 0xF1;
for(j=0;j<15;j++)
{
i = *idata_point;
send_UART(i);
idata_point++;
}
while(1);
}
void serial_port_initial()
{
SCON = 0x50; //0101,0000 8位可變波特率,無奇偶校驗位
TMOD = 0x21; //0011,0001 設置頂時器1為8位自動重裝計數器
TH1 = RELOAD_COUNT; //設置定時器1自動重裝數
TL1 = RELOAD_COUNT;
TR1 = 1; //開定時器1
ES = 1; //允許串口中斷
EA = 1; //開總中斷
}
void send_UART(unsigned char i)
{
ES = 0; //關串口中斷
TI = 0; //清零串口發送完成中斷請求標志
SBUF = i;
while(TI ==0); //等待發送完成
TI = 0; //清零串口發送完成中斷請求標志
ES = 1; //允許串口中斷
}
void UART_Interrupt_Receive(void) interrupt 4
{
unsigned char k = 0;
if(RI==1)
{
RI = 0;
k = SBUF;
if(k==Self_Define_ISP_Download_Command) //是自定義下載命令
{
delay(); //延時1秒就足夠了
delay(); //延時1秒就足夠了
soft_reset_to_ISP_Monitor(); //軟復位到系統ISP監控區
}
send_UART(k);
}
else
{
TI = 0;
}
}
void soft_reset_to_ISP_Monitor(void)
{
IAP_CONTR = 0x60; //0110,0000 軟復位到系統ISP監控區
}
void delay(void)
{
unsigned int j = 0;
unsigned int g = 0;
for(j=0;j<5;j++)
{
for(g=0;g<60000;g++)
{
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
}
}
}
void display_MCU_Start_Led(void)
{
unsigned char i = 0;
for(i=0;i<3;i++)
{
MCU_Start_Led = 0; //頂亮MCU開始工作指示燈
delay();
MCU_Start_Led = 1; //熄滅MCU開始工作指示燈
delay();
MCU_Start_Led = 0; //頂亮MCU開始工作指示燈
}
}
上一篇:51單片機+18B20顯示程序+74HC164擴展顯示數碼管
下一篇:集約型51系統板輸出通道的改進設計
推薦閱讀
史海拾趣
在辰頤電子公司的發展過程中,他們意識到單打獨斗很難在市場中取得優勢。因此,公司開始注重產業鏈的整合和協同發展。他們與上游供應商建立了緊密的合作關系,確保原材料的穩定供應和質量保證;與下游客戶建立了長期的合作伙伴關系,提供定制化的解決方案和優質的服務。此外,公司還積極參與行業協會和組織的活動,加強與同行業企業的交流與合作,共同推動整個電子行業的發展。
品質是Cobham Semiconductor Solutions的生命線。公司始終堅持嚴格的質量管理體系,從原材料采購到生產流程,再到產品出廠,每一個環節都經過嚴格把控。公司還引入了先進的生產設備和技術,確保產品質量的穩定性和可靠性。這種對品質的執著追求,使得Cobham的產品在市場上贏得了良好的聲譽和口碑。
1994年,三星電子(蘇州)半導體有限公司在蘇州工業園區成立,成為園區首批入駐的外資企業之一。公司初期主要生產配套、低附加值產品,但隨著市場的變化和競爭的加劇,公司開始尋求轉型。2003年,蘇州工廠開始轉型生產核心產品,標志著公司從低端生產向高端制造的轉變。此后,公司不斷加大在智能制造方面的投入,采用先進的半導體自動化生產管理系統和ERP管理系統,實現了“無人化”自動化生產,生產自動化率可達90%以上。同時,公司始終堅持“綠色經營”的可持續發展理念,致力于保護及改善周邊環境,履行企業的環保社會責任。
東微半導是一家在蘇州扎根14余年的半導體公司,致力于自主研發和生產功率半導體核心器件。在充電樁產業快速發展的背景下,東微半導率先量產國內首款自主研發充電樁用功率半導體核心器件,打破了國外廠商的壟斷地位。公司經過多年的自主研發,獲得了創新結構的高壓超級結技術的專利,使MOSFET場效晶體管的電能轉換效率提升,具有動態損耗小、發熱量低的優點。經客戶端實測,整體性能達到了國際一流水平,現已出口至韓國、日本和德國等國際市場。
通過不斷的努力和創新,C&K在90年代中期已經成為世界領先的開關制造商之一,也是業內最受信賴的品牌之一。這一成就的取得離不開公司對產品質量的嚴格把控和對技術創新的持續追求。同時,C&K還積極與全球各地的客戶合作,根據他們的需求量身定制開關產品,贏得了廣泛的贊譽。
盡管Eclipse是一個開源項目,但其背后也有著商業化的運作。一些公司看到了Eclipse的潛力,紛紛推出了基于Eclipse的商業產品。這些產品不僅繼承了Eclipse的優秀特性,還加入了一些獨特的功能和服務,以滿足不同客戶的需求。通過商業化運作,Eclipse的影響力得到了進一步擴大。
mass storage 設備異常,(錯誤代碼10,設備無法啟動),請問這個可能是什么原因? mass storage 設備異常,(錯誤代碼10,設備無法啟動),請問這個可能是什么原因? 急在線等~~… 查看全部問答∨ |
|
在兩臺電腦上通過串口傳遞文件,發送方為自己編寫的程序,接收方為超級終端。 兩臺機器上都用超級終端進行操作沒有問題,但那樣需要自己的程序根據命令行命令來發送,沒找到好的方法。 請大家給點建議,或者講講超級終端的原理,他怎么知道所傳文 ...… 查看全部問答∨ |
播放音樂時,隨機出現持續噼啪聲 加大DMA Buffer后,此問題得到解決,但是引入了另外一個問題: 播放視頻文件時很卡,出現很明顯的停頓 大家遇到過類似的問題么?… 查看全部問答∨ |
SATA硬盤一定是采用SATA controller接口嗎?在XP下如何看出有沒有sata controller 阿 我的電腦用的SATA和IDE兩個硬盤,我在device manage看到有IDE controller,但是沒找到SATA controller。有sata硬盤一定能找到sata controller 嗎… 查看全部問答∨ |
我將一個windows程序移植到wince下,在調用下面一個函數時出現了問題: SECURITY_STATUS SEC_ENTRY InitializeSecurityContext( PCredHandle phCredential, PCtxtHandle phContext, SEC_WCHAR SEC_FAR* ...… 查看全部問答∨ |
extern "C" HRESULT PHExtGetPhoneViewInfo (PH_VIEW view, HINSTANCE* phInstance, PH_VIEWINFOFLAGS* pvif, LPPHONEVIEWHOOKPROC* & ...… 查看全部問答∨ |
特點:可以用USB口或交流適配器對單節可充電鋰電池充電輸入電壓范圍:4.35V 到 6V片內功率晶體管不需要外部阻流二極管和電流檢測電阻恒壓充電電壓4.2V,也可通過一個外部電阻調節為了激活深度放電 ...… 查看全部問答∨ |
前階段,本人使用一款單片機ST arm7發現一個問題:因為外節設備比較多,而且很難避免人為的帶電插拔外接設備,所以單片機的對應的IO口特別容易被燒壞,我查可一些資料,上面顯示可以在IO上串一個20-100歐的電阻,以及可以接一個瞬態管之類的,請 ...… 查看全部問答∨ |
#include <msp430x20x3.h> #define ADCDeltaOn 31 // ~0.5 Deg C delta static unsigned int LastADCVal; // holds ADC temperature result void main(void) { BCSCTL2 |= DIVS_3; ...… 查看全部問答∨ |
設計資源 培訓 開發板 精華推薦
- EEWorld十五周年,感恩同行!盤點那些難忘的小確幸~
- 嵌入式Rust修煉營直播(第二場):MCU上電后,Rust代碼啟動流程解析
- 是德科技服務日研討會|武漢站——邀請函
- Sitara™ AM335x ARM® Cortex™-A8 團購
- Microchip直播:單片機編程不再難, 利用MPLAB®代碼配置器(MCC)實現快速開發
- Digi-key干貨視頻教程來襲,意見領袖講解疑難設計問題,帶你突破成長瓶頸~
- 【備戰國賽】超多電賽干貨資料等你下載!蓋樓助力電賽贏積分
- 報名贏【掛燈、浴巾】等好禮|TI MSPM0家用電器和電機控制應用詳解
- 下載有禮:4種方法幫助您高效進行元器件表征,加速元器件檢測