89c51에 대한 1sec 지연 프로그램

S

srinivasan2323

Guest
안녕하세요 내 89c51 프로그램에 대한 1sec 지연 프로그램이 필요
 
사단은 16 비트 타이머를 사용하여 50ms의 지연이 다음 20 시간에 전화하다
 
안녕하세요, U는 16 비트 타이머로 00 로드할 때 그것은 FF와 오버플로를 도달 71.1msec 걸립니다. 그래서 71.1msec * 14times 루프 appx 995msec을 제공합니다. 오버플로우 후 프로그램을 다시 반복 모든 1sec 지연에 해당합니다. 그래서 타이머의 00 프로그램을 작성하고 14 번 동안 반복합니다. 그것을 측정 당신은 1 초 지연을 얻을 것이다. 어셈블리에서뿐만 아니라 C로 작성
 
공극 delay1s (무효) {부호 문자 카운트 = 50; (> 0 포함) 동안 {TH0 = 183; TL0 = 255; TMOD = 1; TR0 = 1; (! TF0) 동안 {} TF0 = 0; TR0 = 0; 카운트 -;}}
 
[인용 = srinivasan2323] 안녕 내 89c51 프로그램을 정확한 타이밍에 대해 for 루프의 insted [/ 인용] 베스트 웨이 U 사용 타이머에 대한 1sec 지연 프로그램이 필요합니다. 먼저 U 16의 가치를 로드할 수 있습니다 - 비트 타이머를 50 MS하십시오. 20 회 대한 타이머를 로딩하므로, U는 정확한 1 초 지연을 얻을 것이다.
 
NOP NOP djnz R1, $ djnz의 R2, $ djnz R0, 베다 엔드와 같은 프로그램은 다음과 같습니다 안녕하세요, 타이머 또는 예를 들어 일상적인 전화, MOV R0, # 4 MOV R1, # 250 MOV R2, # 250 베다를 사용하도록 결정할 수 있습니다 isecond 지연을 제공하지만 다른 방법 하나는 89c51의 타이머를 사용하여 결정할 수 있습니다
 
먼저 나한테 UR이 시스템을 사용하여 결정의 가치를 알려
 

Welcome to EDABoard.com

Sponsor

Back
Top