久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

stm32f103仿制FX2N源碼

[復制鏈接]
跳轉到指定樓層
樓主


單片機源程序如下:
  1. /********************************************************/
  2. // CPU需要:STM32F103--RAM內存不小于64K        Flash內存不小于128K
  3. // 本代碼已在STM32F103RDT6測試通過


  4. /********************************************************/

  5. #include "stm32f10x.h"
  6. #include "stm32f10x_flash.h"
  7. #include <OS_Config.h>
  8. #include "abs_addr.h"
  9. #include <stdio.h>
  10. #include <absacc.h>

  11. extern void Process_switch(void);
  12. extern void TX_Process(void);
  13. extern void Stm32_Clock_Init(u8 PLL);
  14. extern u8 rx_end;
  15. extern u16 all_data[16600] __at (0x20005002);
  16. extern void backup_data(void);
  17. extern void recover_data(void);
  18. extern void off_out(void);
  19. u32  startup  __at (0x2000D5F0);
  20. u8 power_down;
  21. u8 Run_Flag=1;
  22. #define BmpHeadSize (54)
  23. #ifdef __GNUC__
  24.   #define PUTCHAR_PROTOTYPE int __io_putchar(int ch)
  25. #else
  26.   #define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)
  27. #endif /* __GNUC__ */

  28. static void Delay(__IO uint32_t nCount)
  29.   {  while(nCount--); }

  30. int main(void)
  31. {  
  32.   u16 LED=0;
  33. //  u16 Timer[2];
  34.   Delay(10000);
  35.   init_xy();                    //PLC 輸入輸出初始化
  36.   Stm32_Clock_Init(9);
  37.   startup=0X55AA55AA;
  38.   init_xy();                     //PLC 輸入輸出初始化
  39.   Delay(6);
  40.   USART_DeInit(USART1);         //串口初始化
  41.   Delay(6);
  42.   usart_init();                 //串口初始化
  43.   USART_ITConfig(USART1,USART_IT_RXNE,ENABLE);
  44.   TIM5_Init();                 //TIMER5 定時器初始化
  45.   NVIC_Configuration();         //中斷程序全部等級劃分
  46.   power_down=5;
  47.   while (1)
  48.   {        
  49.                 y_refresh();
  50.                 x_refresh();
  51.                 all_prog_process();


  52.                 switch(rx_end)          //  解析FX2N 三菱軟件發送的命令
  53.                 {
  54.                         case 1  :
  55.                                   rx_end=0,
  56.                                   Process_switch(),
  57.                                   TX_Process(),
  58.                                   LED=800;
  59.                                   break;          //處理三菱軟件的程序

  60.                         case 5  :
  61.                                   rx_end=0,
  62.                                   TX_Process(),
  63.                                   LED=800;  
  64.                                   break;          //處理一次發送指令

  65.                         default :   
  66.                              if(LED>=1) LED--;                                 
  67.                               break;           
  68.                 }

  69. /********************************************************/
  70. // CPU需要:STM32F103--RAM內存不小于48K        Flash內存不小于256K
  71. // 本代碼已在STM32F103RCT6 RDT6 VCT6 VET6測試通過
  72. // 編輯日期:20151220
  73. // editor by DaShi
  74. /********************************************************/


  75.                 /*        低電壓檢測  斷電保持數據
  76.                 if(!PVD)           //MY PCB== !PVD
  77.                 {        
  78.                         if(Timer[0]==0)
  79.                         recover_data();
  80.                         if(Timer[0]<=60000)
  81.                         Timer[0]++;
  82.                 }
  83.                 else
  84.                 {
  85.                         all_data[0x180/2]=0;
  86.                         if(Timer[0]>=100)
  87.                         backup_data();
  88.                         Timer[0]=0;
  89.                 }
  90.                
  91.                 //*/
  92.         }
  93. }


  94. PUTCHAR_PROTOTYPE
  95. {
  96.   USART_SendData(USART2, (uint8_t) ch);
  97.   while (USART_GetFlagStatus(USART2, USART_FLAG_TC) == RESET);
  98.   return ch;
  99. }
  100. #ifdef  USE_FULL_ASSERT
  101. void assert_failed(uint8_t* file, uint32_t line)
  102. {  while (1); }
  103. #endif

復制代碼


所有代碼51hei附件下載:
FX2N-16MR發貨包-2017.7z (6.01 MB, 下載次數: 168)

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

沙發
ID:658136 發表于 2021-9-11 23:20 | 只看該作者
樓主能分享一下PCB嗎?
回復

使用道具 舉報

板凳
ID:815274 發表于 2021-10-8 15:59 | 只看該作者
正是我所需的,非常詳細!
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 少妇一级片 | 欧美综合在线视频 | 日本在线看片 | 午夜美女福利视频 | 国产精品一区一区三区 | 一区二区三区久久久 | av免费网站 | 欧美成人一级片 | 在线免费毛片 | 免费黄色小说网站 | 日韩色综合 | 一区二区在线看 | av播播| 中文一级片 | 亚洲激情一区二区 | 三级黄色在线观看 | 少妇搡bbbb搡bbb搡毛茸茸 | 亚洲黄色免费 | 久久一区二区视频 | 精品国产一区二区三区久久久蜜月 | 青青草手机在线视频 | 人人插人人射 | 久热精品视频在线观看 | 两性免费视频 | 黄色欧美大片 | 天天看天天操 | 欧美在线天堂 | 欧洲一区二区三区 | 亚洲成人av一区二区 | 午夜无遮挡 | 成年人免费在线视频 | 亚洲网站在线 | 日韩怡红院| 欧美精品久久久久久久多人混战 | 天天综合影院 | 黄色激情网站 | 欧美另类视频 | 天堂色av| 在线观看的av网站 | 日本在线免费 | 一级黄色录像视频 |