プロテウス+ VSPDは、仮想シリアルポートエミュレーションSTM32を実装します

準備ツール

  1. STM32 CubeMXは
    Halはまた、Keil社、非本質的に、本研究で確立エンジニアリングCubeMXと直接ファームウェアライブラリー作品を作成することができます場合は、ライブラリを使用しない場合は、STM32作品を作成するために使用されます
  2. keil5 / IAR
    プログラミングのため。
  3. プロテウス
    描画のための回路シミュレーション図。
  4. VSPD
    VSPDがある仮想シリアルポートソフトウェア、VSPDのダウンロードリンク:https://pan.baidu.com/s/126ZXjs6z9E8mnMDLybnfIg
    抽出コード:XAMA
    オープンインストール後、仮想シリアルポートを作成します。データのみCOM1 COM2に送信できるようにVSPDは、ペアでこのようなCOM1、COM2のように、シリアルポートの形態で添加され、COM2 COM1が自動的に送信されたデータを受信します。
    ここに画像を挿入説明
    示されているように、我々は成功し、仮想シリアルポートを作成しました。
  5. シリアルデバッグアシスタント
    XCOMとしては、することができます。

プロテウスプロジェクト

新築プロテウス後、Pはキー開口要素ライブラリ、MCUチップセレクトタイプIは、本明細書stm32f103c6ショートカット、リセット回路と外部水晶を必要としない特徴、他の要素を追加して、追加できません。
また、当社は、DB9シリアルポート、コンポーネントライブラリ検索COMPIMを使用する必要があります。TXとSTM32、RX及びRXが接続されているTX COMPIMに接続されているのではなく、物理的架橋(接続TX RX、TXもRX)として。
ここに画像を挿入説明
COMPIM設定オプション:
ここに画像を挿入説明

CubeMXのプロジェクト構成

ここに画像を挿入説明
ここに画像を挿入説明
ここに画像を挿入説明

シリアルトランシーバプログラム

シリアル通信の参照ブログについて:https://blog.csdn.net/weixin_43116606/article/details/104222528

ここでは、キーコードの一部のみを掲載。

/* USER CODE BEGIN 2 */
 HAL_UART_Receive_IT(&huart1, (uint8_t *)&aRxBuffer, 1);
 user_main_printf("hello,"带火星的小木条!");
  /* USER CODE END 2 */
/* USER CODE BEGIN 4 */
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{
    char *pCmd = NULL;
    uint8_t len;
 switch(aRxBuffer){
        case '1':
            pCmd = "command 1\r\n";
            len  = strlen(pCmd);
            break;
        case '2':
            pCmd = "command 2\r\n";
            len  = strlen(pCmd);
            break;
        case '3':
            pCmd = "command 3\r\n";
            len  = strlen(pCmd);
            break;
    case '4':
            pCmd = "command 4\r\n";
            len  = strlen(pCmd);
            break;
        default:
            pCmd = "command cmd\r\n";
            len  = strlen(pCmd);
            break;
 }
  HAL_UART_Transmit(&huart1, (uint8_t *)pCmd, len,0xFFFF);
 HAL_UART_Receive_IT(&huart1, (uint8_t *)&aRxBuffer, 1);  
}
/* USER CODE END 4 */

仮想シリアルポートエミュレーション

戻るプロテウス、STM32チップをダブルクリックしてhexファイルをロードし、結晶を設定するには、8Mです。
ここに画像を挿入説明
COM2、9600と同じボーレートを選択し、シリアルデバッグアシスタントを開きます。
ここに画像を挿入説明
最初のシリアルポートを開き、プロテウスシミュレーションプロジェクトを実行します。
ここに画像を挿入説明
PS:仮想シリアルポートを削除することを忘れないように出て実行した後、シリアルポートはそうでない占有ヨーヨーだっただろう
ここに画像を挿入説明

公開された17元の記事 ウォン称賛21 ビュー10000 +

おすすめ

転載: blog.csdn.net/weixin_43116606/article/details/104333946