NEC 78k0 串口通信与VB上位机实现

5星 · 超过95%的资源 需积分: 9 20 下载量 37 浏览量 更新于2024-09-20 收藏 34KB DOC 举报
"NEC 78k0 串口与上位机VB通讯程序的实现细节及代码示例" 在微控制器编程中,串行通信是一种常见且重要的通信方式,用于设备间的简单数据交换。本资源涉及的是NEC 78k0系列微控制器与上位机(通常为个人计算机)之间的串口通信程序。该程序涉及到的主要知识点包括串口配置、中断处理以及VB(Visual Basic)上位机程序的交互。 1. **NEC 78k0 串口通信**: - NEC 78k0系列是NEC公司生产的一系列8位微控制器,它们具有内置的串行通信接口(UART),可用于与外部设备进行串行通信。 - 串口通信的基本参数包括波特率、数据位、停止位和校验位。在代码中,这些参数需要通过配置微控制器的特殊功能寄存器(SFRs)来设定。 2. **串口配置**: - 在给出的代码片段中,`init_cpu()`函数可能是用于初始化CPU和串口的。`OSCCTL`寄存器被设置为0x40,这通常用于设置系统时钟频率,从而确定串口的波特率。 - `PCC`寄存器的设置可能用于开启或关闭某些端口引脚,这里设置为0x00,可能是为了配置串口引脚作为输入或输出。 3. **中断处理**: - 串口通信常使用中断来处理接收和发送事件,以避免持续轮询导致的处理器资源浪费。代码中的`#pragma interrupt INTSR6 interpulseR`和`#pragma interrupt INTST6 interpulseT`是针对串口接收(RX)和发送(TX)中断的声明。 - 在中断服务例程中,会处理接收到的数据或准备要发送的数据。 4. **变量定义**: - 在中断服务例程中,定义了几个unsigned char类型的变量,如`a`, `b`, `c`, `d`, `i`, `k`, `ipp`和数组`tttt[200]`,这些可能用于存储临时数据、状态标志或接收缓冲区。 5. **VB上位机通信**: - 在上位机端,通常使用编程语言如VB来建立一个串口通信的程序,设置串口号、波特率等参数,并通过调用读写函数来发送和接收数据。 - VB的`SerialPort`类可以方便地处理串口通信,包括打开、关闭串口,设置通信参数,以及读写数据事件的处理。 这个资源提供了一个从NEC 78k0微控制器到VB上位机的串口通信实例,涵盖了硬件初始化、中断处理和上位机编程的基本概念。实际应用中,开发者需要根据具体需求调整波特率、中断处理逻辑,并确保VB端的程序能够正确响应微控制器发送的数据。