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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4692|回復: 31
打印 上一主題 下一主題
收起左側

51單片機毒程序,大家看看

  [復制鏈接]
跳轉到指定樓層
樓主
事情是這樣的 ,我在調試一個程序,功能:按鍵向電腦串口助手發數據,電腦也可以發數據給單片機控制led燈。
用的是開發板。  大家可以幫忙看看,單片機還有沒有救。
源程序和有毒部分代碼都標出來了。
第一次發帖,如有不妥,還望多包涵。

屏幕截圖 2023-08-11 091636.png (34.1 KB, 下載次數: 81)

代碼有毒的部分,已被屏蔽

代碼有毒的部分,已被屏蔽

13、電腦單片機UART通信 - 副本.rar

21.21 KB, 下載次數: 13

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

使用道具 舉報

沙發
ID:1091094 發表于 2023-8-11 09:39 | 只看該作者
忘記說了:就是燒錄了這個程序后,就無法再燒錄程序了。單片機相當于報廢了
回復

使用道具 舉報

板凳
ID:143767 發表于 2023-8-11 12:16 | 只看該作者
有那么嚴重嗎?沒聽說過單片機中毒
回復

使用道具 舉報

地板
ID:773929 發表于 2023-8-11 12:35 | 只看該作者
試試按住復位鍵,點下載程序,松開復位鍵
回復

使用道具 舉報

5#
ID:690831 發表于 2023-8-11 12:43 來自觸屏版 | 只看該作者
燒錄程序是用廠家固化的引導文件,和你的用戶程序沒任何關系。
回復

使用道具 舉報

6#
ID:213173 發表于 2023-8-11 13:20 | 只看該作者
危言聳聽
回復

使用道具 舉報

7#
ID:94031 發表于 2023-8-11 14:11 | 只看該作者
我把你發的程序下載到普中的開發板,普中開發板一切正常,不要緊張慢慢找原因。
回復

使用道具 舉報

8#
ID:491577 發表于 2023-8-11 14:33 | 只看該作者
也可能是連接線質量太差造成,下載程序時波特率默認115200太大了,改成4900就可以了,我遇到過這樣的問題,改波特率就可以了。
回復

使用道具 舉報

9#
ID:41656 發表于 2023-8-11 16:18 | 只看該作者
不知道你用的什么單片機  要是STC的話使用串口是不影響下載程序的,冷啟動過程中是先運行ISP代碼的,你的程序這時候還沒開始運行,注意別通過串口引腳的電流給單片機供電了就行
回復

使用道具 舉報

10#
ID:517951 發表于 2023-8-12 07:57 | 只看該作者
芯片燒錄不進去, 多數情況就是使用不當單片機損壞了. 比如過壓, 反向接入電壓.ESD打壞等原因
回復

使用道具 舉報

11#
ID:1091094 發表于 2023-8-12 09:16 | 只看該作者
aidianzi 發表于 2023-8-11 16:18
不知道你用的什么單片機  要是STC的話使用串口是不影響下載程序的,冷啟動過程中是先運行ISP代碼的,你的程 ...

如果是串口一直在發送數據,標志位一直都在,會不會干擾燒錄程序,因為程序燒錄也是用串口
回復

使用道具 舉報

12#
ID:1091094 發表于 2023-8-12 09:22 | 只看該作者
xuyaqi 發表于 2023-8-11 14:11
我把你發的程序下載到普中的開發板,普中開發板一切正常,不要緊張慢慢找原因。

你把我屏蔽的那部分 給釋放出來了嗎     

程序運行的也不怎么正常,斷電或復位,會出現按鍵只能發送一次,或兩次的情況,然后就什么也操作不了了。
回復

使用道具 舉報

13#
ID:1091094 發表于 2023-8-12 09:25 | 只看該作者
rayin 發表于 2023-8-12 07:57
芯片燒錄不進去, 多數情況就是使用不當單片機損壞了. 比如過壓, 反向接入電壓.ESD打壞等原因

但是什么功能都正常的芯片來的,而且是開發板,自己沒有連錯線,壞的幾率非常小
回復

使用道具 舉報

14#
ID:1091094 發表于 2023-8-12 09:34 | 只看該作者
iamluckman 發表于 2023-8-11 12:43
燒錄程序是用廠家固化的引導文件,和你的用戶程序沒任何關系。

如果是串口被占用了,會不會呢 不是很懂
回復

使用道具 舉報

15#
ID:899981 發表于 2023-8-12 10:27 | 只看該作者
STC在燒錄過程中的確可以遇到多種問題,但是要找方法,必要時請求廠家解決。不會壞的。
回復

使用道具 舉報

16#
ID:94031 發表于 2023-8-12 11:09 | 只看該作者
3038838599 發表于 2023-8-12 09:22
你把我屏蔽的那部分 給釋放出來了嗎     

程序運行的也不怎么正常,斷電或復位,會出現按鍵只能發送一 ...

我把你屏蔽的釋放出來進行編譯,然后下載,正常,再下載還是正常,沒有對你的程序進行研究。
回復

使用道具 舉報

17#
ID:1091094 發表于 2023-8-12 11:17 | 只看該作者
aidianzi 發表于 2023-8-11 16:18
不知道你用的什么單片機  要是STC的話使用串口是不影響下載程序的,冷啟動過程中是先運行ISP代碼的,你的程 ...

用的是stc89c52 系類        普中的開發板,電路的話,是通過CH340控制mos管直接接通USB的5v的。
不知道你說的:串口引腳的電流是什么,但是開發板的TXD/RXD有上拉電阻,上拉到5V,和單片機電源的是同一個5V.
回復

使用道具 舉報

18#
ID:1091094 發表于 2023-8-12 11:19 | 只看該作者
ZHAOBAO511 發表于 2023-8-12 10:27
STC在燒錄過程中的確可以遇到多種問題,但是要找方法,必要時請求廠家解決。不會壞的。

怎么找廠家  是去煉丹爐的官網嗎  我試試
回復

使用道具 舉報

19#
ID:1091094 發表于 2023-8-12 11:24 | 只看該作者
xuyaqi 發表于 2023-8-12 11:09
我把你屏蔽的釋放出來進行編譯,然后下載,正常,再下載還是正常,沒有對你的程序進行研究。

那我也不清楚了,我有三塊單片機,現在那塊還是燒錄不了,你用的是普中的開發板嗎
試一試功能如何,我感覺自己寫的中斷服務程序、中斷配置沒有什么問題,不知道為什么,還是效果不理想,
有時候重新上電就只能發送一次,就卡住了,什么反應都沒有,然后復位或者重新上電就正常了。
是因為程序跑飛了嗎?不是很懂跑飛。
回復

使用道具 舉報

20#
ID:195496 發表于 2023-8-12 11:36 | 只看該作者
電路斷電不徹底也會導致下載失敗,主要調波特率,斷電。
回復

使用道具 舉報

21#
ID:1091094 發表于 2023-8-12 11:53 | 只看該作者
大漠落日 發表于 2023-8-12 11:36
電路斷電不徹底也會導致下載失敗,主要調波特率,斷電。

我有兩套開發板都下載不了  也不清楚什么情況
回復

使用道具 舉報

22#
ID:690831 發表于 2023-8-12 14:23 來自觸屏版 | 只看該作者
p2p3都接地試試
回復

使用道具 舉報

23#
ID:74687 發表于 2023-8-12 17:55 | 只看該作者
程序一般不會干擾燒錄的,我倒碰過電壓低的時候按復位鍵下載不了,但是關電源再打開電源可以燒錄的。
回復

使用道具 舉報

24#
ID:94031 發表于 2023-8-12 18:42 | 只看該作者
3038838599 發表于 2023-8-12 11:24
那我也不清楚了,我有三塊單片機,現在那塊還是燒錄不了,你用的是普中的開發板嗎
試一試功能如何,我感 ...

我是用普中開發板做的測試,我看到有“單片機毒程序”特意試了試。
回復

使用道具 舉報

25#
ID:1010435 發表于 2023-8-12 19:15 | 只看該作者
這是一個最基本的串口1中斷函數吧
回復

使用道具 舉報

26#
ID:213173 發表于 2023-8-13 08:14 | 只看該作者
3038838599 發表于 2023-8-12 11:17
用的是stc89c52 系類        普中的開發板,電路的話,是通過CH340控制mos管直接接通USB的5v的。
不知道 ...

如果你確實用的是普中的開發板和stc89c52,用兩根杜邦線把P1.0、P1.1接GND。STC-ISP正確選擇芯片型號,硬件選項全默認不做任何修改,用下面修改的程序下載,不出意外成功率100%。
  1. /***************************************
  2. *實現電腦和單片機互相通信
  3. *按K4單片機給電腦發8位數據
  4. *用電腦助手給單片機發數據
  5. ****************************************/
  6. #include "reg52.h"

  7. typedef unsigned char u8;//重定義
  8. typedef unsigned int u16;

  9. //定義獨立按鍵K4控制腳
  10. sbit key4=P3^3;

  11. bit busy = 0;

  12. /*******************************************************************************
  13. * 函 數 名       : delay_10us
  14. * 函數功能                 : 延時函數,ten_us=1時,大約延時10us
  15. * 輸    入       : ten_us
  16. * 輸    出             : 無
  17. *******************************************************************************/
  18. void delay_10us(u16 ten_us)
  19. {
  20.         while(ten_us--);       
  21. }
  22. /*********************************
  23. *函數名   :uart_init()
  24. *函數功能 :uart通信配置初始化
  25. *輸入     :baud(給TL1、TH1賦值配置T1定時器的溢出率)
  26. *輸出     :無
  27. *********************************/
  28. void uart_init(u8 baud)
  29. {
  30.         //配置溢出率
  31.         TL1 = baud;
  32.         TH1 = baud;//賦值
  33.         TMOD |= 0X20;//定時器1為工作方式2
  34.         TR1 = 1;//打開定時器
  35.         //配置uart串口寄存器
  36.         SCON = 0X50;//串口工作方式1
  37.         PCON = 0X80;//波特率加倍
  38.         EA = 1;//打開總中斷
  39.         ES = 1;//打開串口中斷
  40.         ET1 = 0;//禁止定時器1中斷
  41.         busy = 0;

  42. }

  43. /*******************************
  44. *函數名  :external_interruption_1()
  45. *函數功能:外部中斷1的初始化
  46. *輸入    : 無
  47. *輸出    : 無
  48. *******************************/
  49. /*
  50. void external_interruption_1(void)
  51. {
  52.         IT1 = 1; //設為下降沿觸發
  53.         EX1 = 1; //打開外部中斷1 中斷允許位
  54.         EA  = 1; //打開總中斷
  55. }
  56. */
  57. /************************
  58. *主函數
  59. *******************************/
  60. void main()
  61. {
  62.         u8 dat = 0;
  63.         u8 count = 0;
  64.         uart_init(0xfa);
  65. //        external_interruption_1();
  66.         while(1)
  67.         {
  68.                 if(key4 == 0)
  69.                 {
  70.                         delay_10us(1000); //按鍵消抖
  71.                         if(key4 == 0)
  72.                         {
  73.                                 count++;
  74.                                 while (busy);
  75.                                 busy = 1;
  76.                                 SBUF = count;
  77.                                 while(!key4);
  78.                         }
  79.                 }
  80.         }
  81. }

  82. /*******************************
  83. *函數名  :Int1_Routine()
  84. *函數功能:外部中斷1中斷服務函數
  85. *輸入    : 無
  86. *輸出    : 無(給電腦發送8位數據)
  87. ********************************/
  88. /*
  89. void Int1_Routine(void) interrupt 2
  90. {
  91.         delay_10us(3000); //按鍵消抖
  92. //        while(key4==0); //如果按鍵還沒放開,就一直留在這
  93.         if(key4 == 0)   // 關掉串口的中斷申請后,加這個穩定多了 如果沒有這句,那么上面delay_10us()是沒用的,
  94.         {
  95.                 SBUF = 0XFF;
  96.                 while(TI==0)  //等待串口數據發送完成
  97.                 TI = 0;
  98.         }
  99.         while(key4==0);    //等待按鍵彈起
  100.         delay_10us(5000); //按鍵消抖
  101.                
  102. }*/

  103. /*****************
  104. 串口中斷
  105. ******************/
  106. void for_safe() interrupt 4
  107. {
  108.         if (TI)
  109.         {
  110.                 TI = 0;
  111.                 busy = 0;
  112.         }
  113.         if (RI)
  114.         {
  115.                 RI = 0;               
  116.                 P2 = ~SBUF;
  117.         }
  118. }
復制代碼
回復

使用道具 舉報

27#
ID:420836 發表于 2023-8-13 09:37 | 只看該作者
該問題應該是由其他原因引起的,我們從未聽說過影響單片機的病毒。
回復

使用道具 舉報

28#
ID:946795 發表于 2023-8-14 01:02 來自觸屏版 | 只看該作者
應該是勾選了,下次冷啟動時P3.2,P3.3為0才可以下載程序了,我以前剛學單片機的時候也這樣過
回復

使用道具 舉報

29#
ID:879348 發表于 2023-8-14 08:12 | 只看該作者
燒錄程序是固化代碼,理論上你無法修改,自然無法有病毒,如果你發現了,應該可以去官網拿10萬塊懸賞
回復

使用道具 舉報

30#
ID:584814 發表于 2023-8-14 08:29 | 只看該作者
樓主成功研制出51單片機病毒,可以直接申請圖靈獎,諾貝爾獎也行哈
回復

使用道具 舉報

31#
ID:65956 發表于 2023-8-14 08:32 | 只看該作者
建議串口1的通訊功能切換到通道2或3,然后P3031只作燒錄接口用,這樣就不會沖突,但你這種現像我用很多都不曾發生過,不過建議你冷啟動燒錄試試看
回復

使用道具 舉報

32#
ID:168461 發表于 2023-8-15 10:46 | 只看該作者
建議上電延時200ms再執行你的程序
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

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