首页 | 嵌入式系统 | 显示技术 | 模拟IC/电源 | 元件与制造 | 其他IC/制程 | 消费类电子 | 无线/通信 | 汽车电子 | 工业控制 | 医疗电子 | 测试测量
首页> 分享下载> 嵌入式系统> 用AVR单片机8位数据产生随机数

用AVR单片机8位数据产生随机数

资料介绍
用AVR单片机8位数据产生随机数

星星灯
源程序:SLAVR737.ASM
用AVR单片机8位数据产生随机数,由PORTA 口及PORTC 口输出随机数,在8X8 LED上显示,
硬件接线电路见“7.3.8按钮猜数”。随机数的种子由程序设定(也可外接开关设定),启动
种子后,由移位寄存器以互斥的异或逻辑组合返回循环产生。
.include"8515def.inc"
rjmp RESET
.def temp =r16 ;暂存器
.def temp1 =r17 ;暂存器1
.def udata =r21 ;存随机数送A口
.def ddata =r22 ;存随机数送C口
.cseg
.org 0x10
RESET: ldi temp,high(RAMEND);设堆栈指针
out SPH,temp
ldi temp,low(RAMEND)
out SPL,temp

ldi temp,0xff ;设A口、C口为输出
out ddra,temp ;送方向寄存器A
out ddrc,temp ;送方向寄存器C
start: wdr ;关看门狗
ldi udata,0x6a ; 设置随机数初值
ldi ddata,0x3c ;
startp: out porta,udata ;输出到A口
out por
用AVR单片机8位数据产生随机数
本地下载

评论