프로 테우스 + VSPD 시리얼 포트 에뮬레이션 STM32
준비 도구
- STM32 CubeMX는
핼도 카일, 중요하지 않은, 본 연구 설립 엔지니어링 CubeMX 직접 펌웨어 라이브러리 작품을 만들 수 있다면 당신이 라이브러리를 사용하지 않는 경우, STM32 작품을 만드는 데 사용 - keil5 / IAR
프로그래밍. - 프로테우스
도면의 회로 시뮬레이션도. - VSPD
VSPD가있다 가상 직렬 포트 소프트웨어 , VSPD 다운로드 링크 : https://pan.baidu.com/s/126ZXjs6z9E8mnMDLybnfIg
추출 코드 : xama
개방 설치 후, 가상 시리얼 포트를 만듭니다. 데이터 만 COM1 COM2로 전송 될 수 있도록 VSPD는 이러한 COM1, COM2 쌍의 시리얼 포트의 형태로 첨가하고, COM2 COM1 자동 전송 된 데이터를 수신한다.
같이, 우리는 성공적으로 가상 직렬 포트를 만들었습니다. - 직렬 디버깅 보조
XCOM 등이 될 수있다.
프로 테우스 프로젝트
신축 테우스 후, P는 키 개구부 소자 라이브러리 MCU 칩 유형 선택을 단축 I 본원 stm32f103c6 및 다른 요소를 추가하는 리셋 회로와 외부 결정을하지 않아도되며, 추가 할 수 없다.
또한, 우리는 DB9 직렬 포트, 구성 요소 라이브러리 검색 COMPIM를 사용해야합니다. 송신기 (TX) 및 상기 STM32 TX COMPIM에 접속되고, RX 및 RX 오히려 물리적 가교 (연결 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 칩, 육각 파일을로드하고, 결정이 8M입니다 설정합니다.
COM2 9600와 같은 전송 속도를 선택하여, 직렬 디버깅 지원을 연다.
첫 번째 직렬 포트를 열고 프로 테우스 시뮬레이션 프로젝트를 실행합니다.
추신 : 밖으로 실행 한 후 가상 시리얼 포트를 삭제 기억, 직렬 포트, 그렇지 않으면 점령되었을 것 요