PIC16F946
DS41265A-page 144
Preliminary
2005 Microchip Technology Inc.
11.3
USART Synchronous
Master Mode
In Synchronous Master mode, the data is transmitted in
a half-duplex manner (i.e., transmission and reception
do not occur at the same time). When transmitting data,
the reception is inhibited and vice versa. Synchronous
mode is entered by setting bit, SYNC (TXSTA<4>). In
addition, enable bit, SPEN (RCSTA<7>), is set in order
to configure the RC6/TX/CK/SCK/SCL/SEG9 and
RC7/RX/DT/SDI/SDA/SEG8 I/O pins to CK (clock) and
DT (data) lines, respectively. The Master mode indi-
cates that the processor transmits the master clock on
the CK line. The Master mode is entered by setting bit,
CSRC (TXSTA<7>).
11.3.1
USART SYNCHRONOUS MASTER
TRANSMISSION
The USART transmitter block diagram is shown in
Figure 11-6. The heart of the transmitter is the Transmit
(Serial) Shift Register (TSR). The shift register obtains
its data from the Read/Write Transmit Buffer register,
TXREG. The TXREG register is loaded with data in
software. The TSR register is not loaded until the last
bit has been transmitted from the previous load. As
soon as the last bit is transmitted, the TSR is loaded
with new data from the TXREG (if available). Once the
TXREG register transfers the data to the TSR register
(occurs in one TCYCLE), the TXREG is empty and inter-
rupt bit, TXIF (PIR1<4>), is set. The interrupt can be
enabled/disabled by setting/clearing enable bit TXIE
(PIE1<4>). Flag bit TXIF will be set regardless of the
state of enable bit TXIE and cannot be cleared in soft-
ware. It will reset only when new data is loaded into the
TXREG register. While flag bit TXIF indicates the status
of the TXREG register, another bit, TRMT (TXSTA<1>),
shows the status of the TSR register. TRMT is a
read-only bit which is set when the TSR is empty. No
interrupt logic is tied to this bit so the user has to poll
this bit in order to determine if the TSR register is
empty. The TSR is not mapped in data memory so it is
not available to the user.
Transmission is enabled by setting enable bit, TXEN
(TXSTA<5>). The actual transmission will not occur
until the TXREG register has been loaded with data.
The first data bit will be shifted out on the next available
rising edge of the clock on the CK line. Data out is
stable around the falling edge of the synchronous clock
(Figure 11-9). The transmission can also be started by
first loading the TXREG register and then setting bit
TXEN (Figure 11-10). This is advantageous when slow
baud rates are selected, since the BRG is kept in Reset
when bits TXEN, CREN and SREN are clear. Setting
enable bit TXEN will start the BRG, creating a shift
clock immediately. Normally, when transmission is first
started, the TSR register is empty, so a transfer to the
TXREG register will result in an immediate transfer to
TSR, resulting in an empty TXREG. Back-to-back
transfers are possible.
Clearing enable bit TXEN during a transmission will
cause the transmission to be aborted and will reset the
transmitter. The DT and CK pins will revert to
high-impedance. If either bit CREN or bit SREN is set
during a transmission, the transmission is aborted and
the DT pin reverts to a high-impedance state (for a
reception). The CK pin will remain an output if bit CSRC
is set (internal clock). The transmitter logic, however, is
not reset, although it is disconnected from the pins. In
order to reset the transmitter, the user has to clear bit
TXEN. If bit SREN is set (to interrupt an on-going trans-
mission and receive a single word), then after the sin-
gle word is received, bit SREN will be cleared and the
serial port will revert back to transmitting, since bit
TXEN is still set. The DT line will immediately switch
from High-Impedance Receive mode to transmit and
start driving. To avoid this, bit TXEN should be cleared.
In order to select 9-bit transmission, the TX9
(TXSTA<6>) bit should be set and the ninth bit should
be written to bit TX9D (TXSTA<0>). The ninth bit must
be written before writing the 8-bit data to the TXREG
register. This is because a data write to the TXREG can
result in an immediate transfer of the data to the TSR
register (if the TSR is empty). If the TSR was empty and
the TXREG was written before writing the “new” TX9D,
the “present” value of bit TX9D is loaded.
Steps to follow when setting up a Synchronous Master
Transmission:
1.
Initialize the SPBRG register for the appropriate
2.
Enable the synchronous master serial port by
setting bits SYNC, SPEN and CSRC.
3.
If interrupts are desired, set enable bit TXIE.
4.
If 9-bit transmission is desired, set bit TX9.
5.
Enable the transmission by setting bit TXEN.
6.
If 9-bit transmission is selected, the ninth bit
should be loaded in bit TX9D.
7.
Start transmission by loading data to the TXREG
register.
8.
If using interrupts, ensure that GIE and PEIE
(bits 7 and 6) of the INTCON register are set.
相关PDF资料
ATMEGA169P-16MCU MCU AVR 16K ISP FLSH 16MHZ 64QFN
AT91SAM7XC256-CU MCU ARM 256K HS FLASH 100-TFBGA
PIC16LF874A-I/P IC MCU FLASH 4KX14 EE A/D 40DIP
PIC16F84-10/SO IC MCU FLASH 1KX14 EE 18SOIC
AT91SAM7XC128-CU MCU ARM 128K HS FLASH 100-TFBGA
PIC18F2458-I/SO IC PIC MCU FLASH 12KX16 28SOIC
PIC18F4455-I/P IC PIC MCU FLASH 12KX16 40DIP
AT91SAM7X256-CU MCU ARM 256K HS FLASH 100-TFBGA
相关代理商/技术参数
ATMEGA169PV-8MU 功能描述:8位微控制器 -MCU AVR 16K FLASH 512B EE 1K SRAM 5V RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
ATMEGA169PV-8MU SL383 制造商:Atmel Corporation 功能描述:MCU 8BIT ATMEGA RISC 16KB FLASH 2.5V/3.3V/5V 64PIN MLF - Tape and Reel
ATMEGA169PV-8MU 制造商:Atmel Corporation 功能描述:IC 8BIT MCU AVR MEGA 8MHZ 64-QFN
ATMEGA169PV-8MUR 功能描述:8位微控制器 -MCU AVR LCD 16KB FLSH EE 512B 1KB SRAM-8MHZ RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
ATMEGA169V 制造商:ATMEL 制造商全称:ATMEL Corporation 功能描述:8-bit Microcontroller with 16K Bytes In-System Programmable Flash
ATMEGA169V_06 制造商:ATMEL 制造商全称:ATMEL Corporation 功能描述:8-bit Microcontroller with 16K Bytes In-System Programmable Flash
ATMEGA169V-1AC 功能描述:IC MCU 8BIT 16KB FLASH 64TQFP 制造商:microchip technology 系列:AVR? ATmega 包装:托盘 零件状态:停產 核心处理器:AVR 核心尺寸:8-位 速度:1MHz 连接性:SPI,UART/USART,USI 外设:欠压检测/复位,LCD,POR,PWM,WDT I/O 数:53 程序存储容量:16KB(8K x 16) 程序存储器类型:闪存 EEPROM 容量:512 x 8 RAM 容量:1K x 8 电压 - 电源(Vcc/Vdd):1.8 V ~ 5.5 V 数据转换器:A/D 8x10b 振荡器类型:内部 工作温度:0°C ~ 70°C 封装/外壳:64-TQFP 供应商器件封装:64-TQFP(14x14) 基本零件编号:ATmega169 标准包装:160
ATMEGA169V-1AI 制造商:ATMEL 制造商全称:ATMEL Corporation 功能描述:8-bit AVR Microcontroller with 16K Bytes In-System Programmable Flash