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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

Proteus+stm32f103c6串口仿真程序及注意事項

  [復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:569027 發(fā)表于 2019-9-17 10:56 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
在用proteus 仿真 stm32f103c6串口時,發(fā)現(xiàn)stm32主頻不能超過55MHz,參見proteus的 sample project,我把倍頻系數(shù)設(shè)為6,同時仿真主頻需設(shè)為倍頻系數(shù)*8M(晶振頻率),串口波特率不受限制。參見附件

proteus仿真串口前必讀事項
1、    proteus Virtual Terminal 串口波特率沒有限制(推薦9600;)
2、    但對于倍頻系數(shù) RCC_PLLMul_*,*的取值似乎只能是6以下,否則Virtual Terminal顯示亂碼。
在sys.c中設(shè)置(洋桃電子例程;野火似乎沒把設(shè)置RCC頻率程序單列出來)
/*設(shè)置PLL時鐘源及倍頻系數(shù)*/   
        RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_5); //RCC_PLLMul_x(枚舉2~16)是倍頻值。當HSE=8MHZ,RCC_PLLMul_9時PLLCLK=72MHZ   
3、    雙擊proteus原理圖中stm32元件,載入*.elf文件時,彈出如圖2的窗口,頻率必須設(shè)為8MHz* RCC_PLLMul_*,其中*<=6, 8MHz為stm32f103c6的外接晶振頻率(proteus仿真庫沒有stm32f103c8)。



仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


單片機源程序如下:
  1. #include "stm32f10x.h" //STM32頭文件
  2. #include "sys.h"
  3. #include "delay.h"

  4. #include "usart.h"


  5. int main (void){//主程序
  6.         RCC_ClocksTypeDef     RCC_Clocks;
  7.         u8 a=7,b=8;
  8.         //初始化程序
  9.         RCC_Configuration(); //時鐘設(shè)置
  10.         
  11.         
  12.   RCC_GetClocksFreq(&RCC_Clocks);

  13.         
  14.         USART1_Init(4800); //串口初始化(參數(shù)是波特率)

  15.         //主循環(huán)
  16.         while(1){

  17.                 /* 發(fā)送方法1 */
  18. //                USART_SendData(USART1 , 0x55); //發(fā)送單個數(shù)值
  19. //                while(USART_GetFlagStatus(USART1, USART_FLAG_TC)==RESET); //檢查發(fā)送中斷標志位

  20.                 /* 發(fā)送方法2 */
  21. //                printf("STM32F103 "); //純字符串發(fā)送數(shù)據(jù)到串口

  22. //                printf("STM32 %d %d ",a,b); //純字符串和變量發(fā)送數(shù)據(jù)到串口,a符號變量
  23.                  
  24.                 /* 發(fā)送方法3 */
  25.                 USART1_printf("STM32 %d %d ",a,b);

  26.         delay_ms(1000); //延時
  27.         }
  28. }


  29. 【變量定義】
  30. u32     a; //定義32位無符號變量a
  31. u16     a; //定義16位無符號變量a
  32. u8     a; //定義8位無符號變量a
  33. vu32     a; //定義易變的32位無符號變量a
  34. vu16     a; //定義易變的 16位無符號變量a
  35. vu8     a; //定義易變的 8位無符號變量a
  36. uc32     a; //定義只讀的32位無符號變量a
  37. uc16     a; //定義只讀 的16位無符號變量a
  38. uc8     a; //定義只讀 的8位無符號變量a

  39. #define ONE  1   //宏定義

  40. delay_us(1); //延時1微秒
  41. delay_ms(1); //延時1毫秒
  42. delay_s(1); //延時1秒

  43. */
復制代碼

所有資料51hei提供下載:
7USART—串口通信.7z (888.46 KB, 下載次數(shù): 673)

評分

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

查看全部評分

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

使用道具 舉報

來自 2#
ID:693722 發(fā)表于 2020-3-1 17:19 | 只看該作者
為什么Proteus里面STM32F103的晶振頻率設(shè)置為40MHz,而不是8MHz,會不會設(shè)置錯了
回復

使用道具 舉報

來自 3#
ID:522338 發(fā)表于 2020-3-10 15:23 | 只看該作者
大佬,為什么我用您的hex文件和仿真 必須把COMPIN的波特率設(shè)置為57600,MCU的晶振48MHZ才能正確輸出啊,但是看代碼里寫的usart的初始化不是4800嗎,而且PLL倍數(shù)那個選擇的是5倍,不應(yīng)該是40MHZ嗎
回復

使用道具 舉報

來自 4#
ID:711649 發(fā)表于 2020-4-17 11:01 | 只看該作者
樓主,方便把源碼發(fā)一下嘛,我按照你的程序創(chuàng)建工程運行之后顯示不正確,直接用你的HEX文件能仿真出來,想看一下你是怎么配置的,謝謝!!
回復

使用道具 舉報

5#
ID:233711 發(fā)表于 2019-11-9 11:37 | 只看該作者
內(nèi)容很新 很實用
回復

使用道具 舉報

6#
ID:253856 發(fā)表于 2019-11-18 13:30 | 只看該作者
感謝分享
回復

使用道具 舉報

7#
ID:72576 發(fā)表于 2020-1-12 12:14 | 只看該作者
感謝分享
回復

使用道具 舉報

8#
ID:72576 發(fā)表于 2020-1-12 12:15 | 只看該作者
感謝分享
回復

使用道具 舉報

9#
ID:552592 發(fā)表于 2020-3-8 15:27 | 只看該作者
Proteus能不能仿真STM32F103C8T6
回復

使用道具 舉報

10#
ID:700459 發(fā)表于 2020-3-9 07:33 | 只看該作者
good code
回復

使用道具 舉報

11#
ID:710744 發(fā)表于 2020-3-18 18:24 | 只看該作者
想學習一下
回復

使用道具 舉報

12#
ID:700459 發(fā)表于 2020-3-19 07:30 | 只看該作者
thank you very much
回復

使用道具 舉報

13#
ID:292427 發(fā)表于 2020-4-11 16:37 | 只看該作者
Pee_32 發(fā)表于 2020-3-8 15:27
Proteus能不能仿真STM32F103C8T6

不能 最新版的都沒有 ,有別的STM32F103
回復

使用道具 舉報

14#
ID:400821 發(fā)表于 2020-4-15 15:11 | 只看該作者
非常好
回復

使用道具 舉報

15#
ID:594374 發(fā)表于 2020-4-20 11:13 | 只看該作者
您好方便發(fā)一下程序么   這個我程序設(shè)置波特率9600,但是在仿真中必須要設(shè)置主頻48波特率57600才能正確接收到  有點蒙  想看看您的程序
回復

使用道具 舉報

16#
ID:731693 發(fā)表于 2020-4-21 08:33 | 只看該作者
感謝分享
回復

使用道具 舉報

17#
ID:734107 發(fā)表于 2020-4-25 15:19 | 只看該作者
僅在主頻48MHZ,virtual的波特率設(shè)置為57600,才可以正常顯示,而且分頻數(shù)為5,6都不行。程序里的波特率,也不能寫57600,我寫的9600可以正常。很迷。。。
回復

使用道具 舉報

18#
ID:483144 發(fā)表于 2020-5-12 10:56 | 只看該作者
Proteus仿真串口時,Proteus的晶振頻率要按SYSCLK的值設(shè)置
回復

使用道具 舉報

19#
ID:750338 發(fā)表于 2020-5-12 21:40 | 只看該作者
感謝分享
回復

使用道具 舉報

20#
ID:256070 發(fā)表于 2020-5-13 10:14 | 只看該作者
學習了
回復

使用道具 舉報

21#
ID:750635 發(fā)表于 2020-5-14 10:44 | 只看該作者
能發(fā)下源代碼嗎
回復

使用道具 舉報

22#
ID:451629 發(fā)表于 2020-5-14 22:26 | 只看該作者
這個。。程序。。哎
回復

使用道具 舉報

23#
ID:451629 發(fā)表于 2020-5-14 22:27 | 只看該作者
只是零散的幾個文件,還不如不發(fā)
回復

使用道具 舉報

24#
ID:748904 發(fā)表于 2020-5-18 10:35 | 只看該作者
感謝分享
回復

使用道具 舉報

25#
ID:762483 發(fā)表于 2020-5-27 14:40 | 只看該作者
這要怎么設(shè)置,暈了,剛剛設(shè)置主頻48波特率57600才能正確接收到(程序波特率為9600),現(xiàn)在又不行了
回復

使用道具 舉報

26#
ID:762483 發(fā)表于 2020-5-27 14:50 | 只看該作者
lsf18 發(fā)表于 2020-4-20 11:13
您好方便發(fā)一下程序么   這個我程序設(shè)置波特率9600,但是在仿真中必須要設(shè)置主頻48波特率57600才能正確接收 ...

你后面成功了嗎?我也是程序設(shè)置的波特率為9600 ,和你的情況一樣。但是代碼重新編譯一下就不可以使用了
回復

使用道具 舉報

27#
ID:435675 發(fā)表于 2020-6-20 14:10 | 只看該作者
感謝分享
回復

使用道具 舉報

28#
ID:810485 發(fā)表于 2020-8-2 11:11 | 只看該作者
huodongjia 發(fā)表于 2020-3-10 15:23
大佬,為什么我用您的hex文件和仿真 必須把COMPIN的波特率設(shè)置為57600,MCU的晶振48MHZ才能正確輸出啊,但 ...

我和你一樣,PROTUES設(shè)置波特率57600才行,程序里面9600,哎
回復

使用道具 舉報

29#
ID:1077229 發(fā)表于 2023-5-14 22:36 | 只看該作者
不錯,有思路了
回復

使用道具 舉報

30#
ID:147329 發(fā)表于 2023-9-3 16:10 | 只看該作者
是不是鎖相環(huán)沒有工作呢?
回復

使用道具 舉報

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

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

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

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产免费一区二区三区网站免费 | 精品欧美一区二区三区久久久 | avav在线看| 中文日韩在线视频 | 国产精品一区二区在线播放 | 黑人性hd | 99爱视频 | 美女在线观看国产 | 国产福利视频 | 成人精品免费视频 | 国产一区影院 | 欧美精品91 | 美女久久久| 久久99精品久久久久久国产越南 | 欧美人成在线视频 | 亚洲精品中文在线观看 | 一级片毛片 | 自拍偷拍中文字幕 | www.47久久青青 | 国产美女黄色片 | 精品久久久久久久 | 欧美综合国产精品久久丁香 | 国产精品九九九 | 91av在线电影 | 91偷拍精品一区二区三区 | 一区二区三区在线免费观看 | 欧美一级精品片在线看 | 91高清视频在线 | 亚洲精品一区二区三区 | 黑人精品欧美一区二区蜜桃 | 成人av片在线观看 | 亚洲精品电影 | 四虎永久| 凹凸日日摸日日碰夜夜 | 亚洲国产网站 | 久久精品亚洲国产奇米99 | 欧美一级片a | 一区二区三区视频在线观看 | 欧洲一级毛片 | 亚洲中午字幕 | 丝袜一区二区三区 |