摘要:介紹在PIC18系列單片機中使用Bootloader的原理、方法及優點;介紹 HI-TECH公司使用C語言實現BootLoader的程序,給出詳細的使用方法和參數配置方法;針對程序中存在的問題進行探討和修改,使修改后的程序實用、可靠。另外,探討對程序數據進行加密、加快下載速度、在RS485/RS422中使用BootLoader的方法和思路。根據此方法,讀者可以編寫出適合自己使用的BootLoader程序。關鍵詞:Boot Loader PIC18 IAP 在線升級PIC單片機的BootLoader屬于需要自己寫程序的那種,可以根據自己的需要寫出各種功能的BootLoader程序來。目前,比較常見的BootLoader程序有Microchip公司的C18版本和著名的PICC編譯器廠商HI-TECH公司(以下簡稱HI-TECH)的PICC18版本。它們的相似之處在于都占用了系統的0x00~0×1FF的程序空間。Microchip的版本是用純匯編寫的,而HI-TECH的版本是用C語言編寫的。
標簽: pic單片機 bootloader
上傳時間: 2022-07-28
上傳用戶:
eeworm.com VIP專區 單片機源碼系列 72資源包含以下內容:1. 24c01a的讀寫程序.doc2. PIC單片機程序設計基礎.pdf3. 24c16讀寫驅動程序.doc4. PIC單片機基礎知識.rar5. 單片機匯編語言程序庫.rar6. PIC的C語言編程知識.pdf7. 51程序庫 (各種常用程序).doc8. keil入門實例教程.rar9. 在偉福集成環境下使用PICC.pdf10. HI-TECH PICC C的使用說明.pdf11. 非接觸IC卡讀寫器的應用設計.pdf12. U盤IC1114的電路圖和C語言源程序.zip13. 鋰-離子線性電池充電控制器LTC1732及其應用.pdf14. MSP430仿真器(機)接口電路圖-原理圖.pdf15. 照明應用中的51LPC微控制器.pdf16. STM32TS60 數字電阻型多觸摸屏控制方案.rar17. PL2303或PV8651USB轉串口原理圖.rar18. PCF8563 實時時鐘日歷芯片選型指南.pdf19. S3C2410內存管理單元MMU基礎實驗.rar20. USB2.0轉IDE的電路圖 (protel文件).rar21. TUSB3200中文資料pdf.pdf22. 單片機實用接口技術.rar23. 串行下載線的原理圖-電路圖.pdf24. 內置微處理器的USB音頻接口芯片TUSB3200.pdf25. MCS-51系列單片機實用接口技術.rar26. 數據處理與控制策略.rar27. LPC932單片機可靠性設計方案.pdf28. 小車走迷宮設計.rar29. 過程通道與人機接口.rar30. 一種單片機實現的嵌入式視頻切換器.pdf31. 溫度傳感器ds1820的匯編程序.pdf32. 3.3v看門狗芯片.pdf33. 交通燈控制板用戶手冊.rar34. 單片機開發中應掌握的幾個基本技巧.pdf35. dsPIC30F看門狗定時器和低功耗模式.pdf36. 新版交通燈模組(包括PCB圖、使用說明書和產品說明書).rar37. 51單片機浮點子程序庫.pdf38. 工程師單片機學習經驗技巧.rar39. 用單片機內置比較器設計高精度A/D變換器.pdf40. MCS-51并行口的擴展.ppt41. 模擬接口.ppt42. 存儲器接口.ppt43. 單片機原理與應用教程.rar44. 中斷技術.ppt45. winCE msdn講座.zip46. MCS 51單片機內部并行口及應用.rar47. RD系列微型打印機打印實例.rar48. 接口技術概述.rar49. 微型打印機的C語言源程序.rar50. 匯編語言程序設計PPT.ppt51. 微型打印機與單片機接口.rar52. MCS-51系列單片機的結構和原理.rar53. 單片機的功率接口.rar54. Keil軟件的使用.rar55. 51單片機應用實例及源代碼.rar56. 匯編語言程序設計基礎.PPT57. 單片機模糊邏輯控制.rar58. 小型鍵盤結構與接口.ppt59. DA與AD轉換.ppt60. 微型計算機總線知識.ppt61. DMA與DMA控制器.ppt62. 微機原理及接口技術課件(教學).rar63. 8255A可編程并行接口.ppt64. 微機原理與匯編語言程序設計課件.rar65. VD108B地感線路安裝圖.pdf66. 8086總線操作、中斷系統及總線請求.ppt67. 微機原理多媒體教材.rar68. RS-485的傳輸線如何合理屏蔽.pdf69. 8253計數器定時器結構與編程.ppt70. 子空間模式識別方法.pdf71. 單片機應用技術電子教案.rar72. 8251A可編程通信接口.ppt73. 語音編解碼芯片MT8965在ALU中的應用.pdf74. Keil C51 使用技巧及實戰.zip75. 微機接口技術試題.rar76. MCS-51單片機系統擴展技術.pdf77. 單片機課程總結.doc78. 微機接口技術精品課程.rar79. LCD為LCM161(HD44780驅動器)字符顯示器驅動程.rar80. 用單片機設計發音電路.pdf81. 微機接口技術課件.rar82. LC7461遙控解碼子程序源代碼.rar83. 模塊化LED大屏幕顯示器的設計.pdf84. 微機原理與接口技術精品課程(課件).rar85. 紅外遙控接收程序.pdf86. 微控制器( MCU) 破解秘笈之中文有刪節版.pdf87. SAM88RCRI 指令集.pdf88. 單片機常用程序庫.rar89. 微處理器指令集設計.ppt90. 基于單片機的頻率計設計.pdf91. 單片機綜合應用.rar92. 單片機多機并行通訊的一種方法.pdf93. pic單片機實用教程(提高篇).rar94. 單片機掉電保護設計.pdf95. pic單片機實用教程(基礎篇).RAR96. 分時操作系統思想在單片機編程中的實現.pdf97. 80C51便攜式產品中的低功耗設計.pdf98. 單片機最小系統電路.pdf99. avr studio 4.14下載.zip100. AVR高速嵌入式單片機原理與應用(修訂版).rar
上傳時間: 2013-07-03
上傳用戶:eeworm
/*--------- 8051內核特殊功能寄存器 -------------*/ sfr ACC = 0xE0; //累加器 sfr B = 0xF0; //B 寄存器 sfr PSW = 0xD0; //程序狀態字寄存器 sbit CY = PSW^7; //進位標志位 sbit AC = PSW^6; //輔助進位標志位 sbit F0 = PSW^5; //用戶標志位0 sbit RS1 = PSW^4; //工作寄存器組選擇控制位 sbit RS0 = PSW^3; //工作寄存器組選擇控制位 sbit OV = PSW^2; //溢出標志位 sbit F1 = PSW^1; //用戶標志位1 sbit P = PSW^0; //奇偶標志位 sfr SP = 0x81; //堆棧指針寄存器 sfr DPL = 0x82; //數據指針0低字節 sfr DPH = 0x83; //數據指針0高字節 /*------------ 系統管理特殊功能寄存器 -------------*/ sfr PCON = 0x87; //電源控制寄存器 sfr AUXR = 0x8E; //輔助寄存器 sfr AUXR1 = 0xA2; //輔助寄存器1 sfr WAKE_CLKO = 0x8F; //時鐘輸出和喚醒控制寄存器 sfr CLK_DIV = 0x97; //時鐘分頻控制寄存器 sfr BUS_SPEED = 0xA1; //總線速度控制寄存器 /*----------- 中斷控制特殊功能寄存器 --------------*/ sfr IE = 0xA8; //中斷允許寄存器 sbit EA = IE^7; //總中斷允許位 sbit ELVD = IE^6; //低電壓檢測中斷控制位 8051
上傳時間: 2013-10-30
上傳用戶:yxgi5
TLC2543是TI公司的12位串行模數轉換器,使用開關電容逐次逼近技術完成A/D轉換過程。由于是串行輸入結構,能夠節省51系列單片機I/O資源;且價格適中,分辨率較高,因此在儀器儀表中有較為廣泛的應用。 TLC2543的特點 (1)12位分辯率A/D轉換器; (2)在工作溫度范圍內10μs轉換時間; (3)11個模擬輸入通道; (4)3路內置自測試方式; (5)采樣率為66kbps; (6)線性誤差±1LSBmax; (7)有轉換結束輸出EOC; (8)具有單、雙極性輸出; (9)可編程的MSB或LSB前導; (10)可編程輸出數據長度。 TLC2543的引腳排列及說明 TLC2543有兩種封裝形式:DB、DW或N封裝以及FN封裝,這兩種封裝的引腳排列如圖1,引腳說明見表1 TLC2543電路圖和程序欣賞 #include<reg52.h> #include<intrins.h> #define uchar unsigned char #define uint unsigned int sbit clock=P1^0; sbit d_in=P1^1; sbit d_out=P1^2; sbit _cs=P1^3; uchar a1,b1,c1,d1; float sum,sum1; double sum_final1; double sum_final; uchar duan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; uchar wei[]={0xf7,0xfb,0xfd,0xfe}; void delay(unsigned char b) //50us { unsigned char a; for(;b>0;b--) for(a=22;a>0;a--); } void display(uchar a,uchar b,uchar c,uchar d) { P0=duan[a]|0x80; P2=wei[0]; delay(5); P2=0xff; P0=duan[b]; P2=wei[1]; delay(5); P2=0xff; P0=duan[c]; P2=wei[2]; delay(5); P2=0xff; P0=duan[d]; P2=wei[3]; delay(5); P2=0xff; } uint read(uchar port) { uchar i,al=0,ah=0; unsigned long ad; clock=0; _cs=0; port<<=4; for(i=0;i<4;i++) { d_in=port&0x80; clock=1; clock=0; port<<=1; } d_in=0; for(i=0;i<8;i++) { clock=1; clock=0; } _cs=1; delay(5); _cs=0; for(i=0;i<4;i++) { clock=1; ah<<=1; if(d_out)ah|=0x01; clock=0; } for(i=0;i<8;i++) { clock=1; al<<=1; if(d_out) al|=0x01; clock=0; } _cs=1; ad=(uint)ah; ad<<=8; ad|=al; return(ad); } void main() { uchar j; sum=0;sum1=0; sum_final=0; sum_final1=0; while(1) { for(j=0;j<128;j++) { sum1+=read(1); display(a1,b1,c1,d1); } sum=sum1/128; sum1=0; sum_final1=(sum/4095)*5; sum_final=sum_final1*1000; a1=(int)sum_final/1000; b1=(int)sum_final%1000/100; c1=(int)sum_final%1000%100/10; d1=(int)sum_final%10; display(a1,b1,c1,d1); } }
上傳時間: 2013-11-19
上傳用戶:shen1230
#include<iom16v.h> #include<macros.h> #define uint unsigned int #define uchar unsigned char uint a,b,c,d=0; void delay(c) { for for(a=0;a<c;a++) for(b=0;b<12;b++); }; uchar tab[]={ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,
上傳時間: 2013-10-21
上傳用戶:13788529953
摘要: 串行傳輸技術具有更高的傳輸速率和更低的設計成本, 已成為業界首選, 被廣泛應用于高速通信領域。提出了一種新的高速串行傳輸接口的設計方案, 改進了Aurora 協議數據幀格式定義的弊端, 并采用高速串行收發器Rocket I/O, 實現數據率為2.5 Gbps的高速串行傳輸。關鍵詞: 高速串行傳輸; Rocket I/O; Aurora 協議 為促使FPGA 芯片與串行傳輸技術更好地結合以滿足市場需求, Xilinx 公司適時推出了內嵌高速串行收發器RocketI/O 的Virtex II Pro 系列FPGA 和可升級的小型鏈路層協議———Aurora 協議。Rocket I/O支持從622 Mbps 至3.125 Gbps的全雙工傳輸速率, 還具有8 B/10 B 編解碼、時鐘生成及恢復等功能, 可以理想地適用于芯片之間或背板的高速串行數據傳輸。Aurora 協議是為專有上層協議或行業標準的上層協議提供透明接口的第一款串行互連協議, 可用于高速線性通路之間的點到點串行數據傳輸, 同時其可擴展的帶寬, 為系統設計人員提供了所需要的靈活性[4]。但該協議幀格式的定義存在弊端,會導致系統資源的浪費。本文提出的設計方案可以改進Aurora 協議的固有缺陷,提高系統性能, 實現數據率為2.5 Gbps 的高速串行傳輸, 具有良好的可行性和廣闊的應用前景。
上傳時間: 2013-11-06
上傳用戶:smallfish
摘要: 串行傳輸技術具有更高的傳輸速率和更低的設計成本, 已成為業界首選, 被廣泛應用于高速通信領域。提出了一種新的高速串行傳輸接口的設計方案, 改進了Aurora 協議數據幀格式定義的弊端, 并采用高速串行收發器Rocket I/O, 實現數據率為2.5 Gbps的高速串行傳輸。關鍵詞: 高速串行傳輸; Rocket I/O; Aurora 協議 為促使FPGA 芯片與串行傳輸技術更好地結合以滿足市場需求, Xilinx 公司適時推出了內嵌高速串行收發器RocketI/O 的Virtex II Pro 系列FPGA 和可升級的小型鏈路層協議———Aurora 協議。Rocket I/O支持從622 Mbps 至3.125 Gbps的全雙工傳輸速率, 還具有8 B/10 B 編解碼、時鐘生成及恢復等功能, 可以理想地適用于芯片之間或背板的高速串行數據傳輸。Aurora 協議是為專有上層協議或行業標準的上層協議提供透明接口的第一款串行互連協議, 可用于高速線性通路之間的點到點串行數據傳輸, 同時其可擴展的帶寬, 為系統設計人員提供了所需要的靈活性[4]。但該協議幀格式的定義存在弊端,會導致系統資源的浪費。本文提出的設計方案可以改進Aurora 協議的固有缺陷,提高系統性能, 實現數據率為2.5 Gbps 的高速串行傳輸, 具有良好的可行性和廣闊的應用前景。
上傳時間: 2013-10-13
上傳用戶:lml1234lml
題目:利用條件運算符的嵌套來完成此題:學習成績>=90分的同學用A表示,60-89分之間的用B表示,60分以下的用C表示。 1.程序分析:(a>b)?a:b這是條件運算符的基本例子。
上傳時間: 2015-01-08
上傳用戶:lifangyuan12
RSA算法 :首先, 找出三個數, p, q, r, 其中 p, q 是兩個相異的質數, r 是與 (p-1)(q-1) 互質的數...... p, q, r 這三個數便是 person_key,接著, 找出 m, 使得 r^m == 1 mod (p-1)(q-1)..... 這個 m 一定存在, 因為 r 與 (p-1)(q-1) 互質, 用輾轉相除法就可以得到了..... 再來, 計算 n = pq....... m, n 這兩個數便是 public_key ,編碼過程是, 若資料為 a, 將其看成是一個大整數, 假設 a < n.... 如果 a >= n 的話, 就將 a 表成 s 進位 (s
標簽: person_key RSA 算法
上傳時間: 2013-12-14
上傳用戶:zhuyibin
數字運算,判斷一個數是否接近素數 A Niven number is a number such that the sum of its digits divides itself. For example, 111 is a Niven number because the sum of its digits is 3, which divides 111. We can also specify a number in another base b, and a number in base b is a Niven number if the sum of its digits divides its value. Given b (2 <= b <= 10) and a number in base b, determine whether it is a Niven number or not. Input Each line of input contains the base b, followed by a string of digits representing a positive integer in that base. There are no leading zeroes. The input is terminated by a line consisting of 0 alone. Output For each case, print "yes" on a line if the given number is a Niven number, and "no" otherwise. Sample Input 10 111 2 110 10 123 6 1000 8 2314 0 Sample Output yes yes no yes no
上傳時間: 2015-05-21
上傳用戶:daguda