mc68hc912bc32 Freescale Semiconductor, Inc, mc68hc912bc32 Datasheet - Page 210

no-image

mc68hc912bc32

Manufacturer Part Number
mc68hc912bc32
Description
M68hc12 Microcontrollers
Manufacturer
Freescale Semiconductor, Inc
Datasheet
Serial Interface
PUPS1 — Pullup Port S Enable PS3 and PS2 Bit
PUPS0 — Pullup Port S Enable PS1 and PS0 Bit
14.5 Serial Character Transmission using the SCI
Code is intended to use SCI1 to serially transmit characters using polling to the LCD display on the
UDLP1 board: when the transmission data register is empty a flag will get set, which is telling us that
SC1DR is ready so we can write another byte. The transmission is performed at a baud rate of 9600.
Since the SCI1 is only being used for transmit data, the data register will not be used bidirectionally for
received data.
14.5.1 Equipment
For this exercise, use the M68HC912B32EVB emulation board.
14.5.2 Code Listing
INCLUDE 'EQUATES.ASM'
; User Variables
; Bit Equates
; ----------------------------------------------------------------------
;
; ----------------------------------------------------------------------
;
MAIN:
DONE:
; ----------------------------------------------------------------------
;
; ----------------------------------------------------------------------
INIT:
;
210
0 = No internal pullups on port S bits 3 and 2
1 = Port S input pins for bits 3 and 2 have an active pullup device. If a pin is programmed as output,
0 = No internal pullups on port S bits 1 and 0
1 = Port S input pins for bits 1 and 0 have an active pullup device. If a pin is programmed as output,
ORG
BSR
BSR
BRA
TPA
ORAA
TAP
MOVB
MOVB
the pullup device becomes inactive.
the pullup device becomes inactive.
SUBROUTINE INIT:
A comment line is deliminted by a semi-colon. If there is no code before
comment, an “;” must be placed in the first column to avoid assembly
errors.
MAIN PROGRAM
$7000
INIT
TRANS
DONE
#$10
#$34,SC1BDL
#$00,SC1CR1
; Equates for registers
M68HC12B Family Data Sheet, Rev. 9.1
; 16K On-Board RAM, User code data area,
; start main program at $4000
; Subroutine to Initialize SCI0 registers
; Subroutine to start transmission
; Always branch to DONE, convenient for breakpoint
; Transfer CCR to A accumulator
; ORed A with #$10 to Set I bit
; Transfer A to CCR
; Set BAUD =9600, in SCI1 Baud Rate Reg.
; Initialize for 8-bit Data format,
; Loop Mode
NOTE
and parity disabled,(SC1CR1)
Freescale Semiconductor

Related parts for mc68hc912bc32