欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 12839|回復: 21
打印 上一主題 下一主題
收起左側(cè)

STC免冷啟動下載器制作 附單片機程序+原理圖PCB文件

  [復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:210139 發(fā)表于 2020-5-27 15:38 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
終于把這個東西做出來,前前后后卡好久運力,這是一款用于給STC各個系列單片機燒錄程序的下載器,支持STC12,STC15,STC8系列,STC的支持。
下載原理
USB轉(zhuǎn)TTL芯片是CH340N,控制芯片STC15F104W,
當STC燒錄軟件發(fā)起燒錄程序指令時,會想單片機發(fā)送一連串的 F8指令,(用其他串口工具可以觀測到,波特率9600)。并且CH340N的聯(lián)絡腳RTS會產(chǎn)生低電平脈沖。
利用這兩點,用STC15F104W監(jiān)測CH340N的狀態(tài),有下載信號時,先給目標單片機斷電再上電,即可完成下載。
具體原理:可參考這個鏈接https://blog.csdn.net/recclay/article/details/81347339

這里要注意一點,STC15F104W這個型號的單片機沒有串口,只能用軟件模擬一個串口,具體可以參考STC15的官方例程庫,在官網(wǎng)有,當然我上的的附件也有
我這一款下載器有一點要說明,那個按鍵開關是常閉狀態(tài)的,即沒有按下時,是導通的,按下以后開關,斷開。設計這個開關,一方面是起冷啟動的作用,另一方面,在調(diào)試產(chǎn)品的時候,可以按這個鍵對產(chǎn)品斷電再上電,免得去插拔USB接口。

下載的成功率也是很高的,保守96%以上吧,當不能下載時可以通過手動開關進行斷電再上電。如此還不行的話,請檢查電路是否正確。
制作出來的實物圖如下:

Altium Designer畫的原理圖和PCB圖如下:(51hei附件中可下載工程文件)



以下是主程序,完整的程序見附件

  1. #include "Drive.h"

  2. u8 Int1Num=0;        //中斷次數(shù)
  3. u8 UART_TX_BUFF[30]={1,2,3,4,5,6,7};

  4. sbit ISP = P3^4;        //控制電源端口
  5. sbit RTS = P3^3;        //檢測CH340C下載信號

  6. void Delay(u16 t)
  7. {
  8.         u16 j,k;
  9.         for(k=0;k<t;k++)
  10.                 for(j=0;j<500;j++);
  11. }

  12. //--外部中斷1初始化
  13. void Init_Int1()
  14. {
  15.         PT1 = 1;        //將外部中斷1設為最高優(yōu)先級
  16.         INT1 = 1;        //中斷引腳P3^3;
  17.         IT1 = 1;        //中斷類型1:下降沿,0:上升沿和下降沿
  18.         EX1= 1;
  19.         EA= 1;
  20. }

  21. void main()
  22. {
  23.         u8 a;
  24. //--用定時器0模擬一個串口
  25.         Time0_Init();
  26.         Init_Uart();
  27. //-----------------------
  28.         Init_Int1();
  29.         ISP = 0;
  30.         while(1)
  31.         {
  32.                 if(Int1Num==1)
  33.                 {
  34.                         while(a<20)
  35.                         {
  36.                                 if(RxOK == 1)
  37.                                 {
  38.                                         if(UART_RX_BUFF[0] == 0XF8)
  39.                                         {
  40.                                                 a++;
  41.                                         }
  42.                                         //else        break;
  43.                                         Clear_UART_BuffFlag();
  44.                                 }
  45.                                 
  46.                         }
  47.                         if(a>=20)        //斷開電源,再接通電源,開啟下載
  48.                         {
  49.                                 ISP =1;        //斷開
  50.                                 TR0 = 0;
  51.                                 Delay(800);
  52.                                 Delay(800);
  53.                                 ISP =0;        //接通
  54.                                 Clear_UART_BuffFlag();
  55.                                 Delay(800);
  56.                                 a=0;
  57.                         }
  58.                         Int1Num = 0;
  59.                 }
  60.                 else
  61.                 {
  62.                         TR0 = 1;
  63.                         ISP = 0;        //接通電源
  64.                 }
  65.         }
  66. }

  67. void EXint2() interrupt 2
  68. {
  69.         Int1Num=1;
  70. }
復制代碼

全部資料51hei下載地址:
STC免冷啟動下載器-程序-原理圖.zip (4.27 MB, 下載次數(shù): 216)

評分

參與人數(shù) 1黑幣 +100 收起 理由
admin + 100 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏26 分享淘帖 頂1 踩
回復

使用道具 舉報

沙發(fā)
ID:224782 發(fā)表于 2020-6-29 11:46 | 只看該作者
下載時是向單片機發(fā)0xF8???????
回復

使用道具 舉報

板凳
ID:210139 發(fā)表于 2020-7-21 13:55 | 只看該作者
大風吹過啊 發(fā)表于 2020-6-29 11:46
下載時是向單片機發(fā)0xF8???????

自己用串口軟件觀察
回復

使用道具 舉報

無效樓層,該帖已經(jīng)被刪除
5#
ID:66757 發(fā)表于 2021-2-13 09:53 來自觸屏版 | 只看該作者
對!就是一大串!
回復

使用道具 舉報

6#
ID:434663 發(fā)表于 2021-6-2 22:29 | 只看該作者
下載的時候 發(fā)送的是 0x7F
回復

使用道具 舉報

7#
ID:434663 發(fā)表于 2021-6-2 22:30 | 只看該作者
CH340N???
回復

使用道具 舉報

8#
ID:884042 發(fā)表于 2021-6-12 17:58 | 只看該作者

不是0xf7嗎?
回復

使用道具 舉報

9#
ID:59830 發(fā)表于 2021-6-13 14:06 | 只看該作者
下載看一下。其實不用單片機。
直接用RST 控制  場效應管 或 開關切換IC 也可以吧.
串口這樣接會不會影響串口功能.
回復

使用道具 舉報

10#
ID:210139 發(fā)表于 2021-6-18 15:47 | 只看該作者
yygdzjs 發(fā)表于 2021-6-13 14:06
下載看一下。其實不用單片機。
直接用RST 控制  場效應管 或 開關切換IC 也可以吧.
串口這樣接會不會影響 ...

不會影響串口功能,不燒錄程序的時候,就可當串口使用
回復

使用道具 舉報

11#
ID:210139 發(fā)表于 2021-6-18 15:48 | 只看該作者
rsurb0371 發(fā)表于 2021-6-2 22:29
下載的時候 發(fā)送的是 0x7F

用串口觀察的時候,波特率不一樣,結(jié)構(gòu)就不一樣,我是用115200觀察的
回復

使用道具 舉報

12#
ID:210139 發(fā)表于 2021-6-18 15:49 | 只看該作者

對沒錯,就是CH340N,不用外部晶振的
回復

使用道具 舉報

13#
ID:210139 發(fā)表于 2021-6-18 15:50 | 只看該作者
殺死比亞 發(fā)表于 2021-6-18 15:47
不會影響串口功能,不燒錄程序的時候,就可當串口使用

直接用硬件來控制,我沒有試過
回復

使用道具 舉報

14#
無效樓層,該帖已經(jīng)被刪除
15#
無效樓層,該帖已經(jīng)被刪除
16#
ID:245629 發(fā)表于 2022-11-21 17:11 | 只看該作者
波特率9600時,確實是F8。

無標題.png (380.28 KB, 下載次數(shù): 118)

無標題.png
回復

使用道具 舉報

17#
ID:245629 發(fā)表于 2022-11-21 17:17 | 只看該作者
波特率2400,是 0x7F

10.png (371.8 KB, 下載次數(shù): 110)

10.png
回復

使用道具 舉報

18#
ID:16255 發(fā)表于 2022-11-22 14:08 | 只看該作者

實際是0x7F。
請看,軟件上的設定最低波特率為2400,所以這個7F也是用2400來發(fā)送的。
回復

使用道具 舉報

19#
ID:245629 發(fā)表于 2022-11-23 08:56 | 只看該作者
mengsiu 發(fā)表于 2022-11-22 14:08
實際是0x7F。
請看,軟件上的設定最低波特率為2400,所以這個7F也是用2400來發(fā)送的。

嗯,是的,下載軟件是用最低波特率來發(fā)送,只要設置最低波特率跟接收同樣,接收的是0x7F,但是STC下載軟件每次打開默認最低波特率2400,最高115200,所以這個燒錄器使用時,打開下載軟件不用去調(diào)最低波特率工作是正常的。
回復

使用道具 舉報

20#
ID:408539 發(fā)表于 2023-1-11 22:37 | 只看該作者
這個我也研究過,不用那么復雜    CH340收到USB發(fā)來的串口信號時RST腳輸出一個低電平脈沖,,利用這個脈充用RC延時一下斷開MUC電源即可
回復

使用道具 舉報

21#
ID:292518 發(fā)表于 2023-4-7 10:15 | 只看該作者
明記冷氣 發(fā)表于 2023-1-11 22:37
這個我也研究過,不用那么復雜    CH340收到USB發(fā)來的串口信號時RST腳輸出一個低電平脈沖,,利用這個脈充用RC ...

學習了
回復

使用道具 舉報

22#
ID:1089126 發(fā)表于 2023-9-22 14:12 | 只看該作者
額,如果說我不用軟件進行冷啟動加個按鍵進行冷啟動會怎么樣?
回復

使用道具 舉報

23#
ID:491875 發(fā)表于 2023-9-23 15:58 | 只看該作者
明記冷氣 發(fā)表于 2023-1-11 22:37
這個我也研究過,不用那么復雜    CH340收到USB發(fā)來的串口信號時RST腳輸出一個低電平脈沖,,利用這個脈充用RC ...

實驗這個電路可行,延時電容104有些小了,我把他改成474效果很好。
回復

使用道具 舉報

24#
ID:491875 發(fā)表于 2023-9-25 22:53 | 只看該作者
147532 發(fā)表于 2023-9-22 14:12
額,如果說我不用軟件進行冷啟動加個按鍵進行冷啟動會怎么樣?

按鍵肯定可以,不過需要手動控制
回復

使用道具 舉報

25#
ID:292518 發(fā)表于 2023-9-26 10:15 | 只看該作者
明記冷氣 發(fā)表于 2023-1-11 22:37
這個我也研究過,不用那么復雜    CH340收到USB發(fā)來的串口信號時RST腳輸出一個低電平脈沖,,利用這個脈充用RC ...

大神的電路,驗證過了,可以使用,全自動下載...
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表