ขอโค้ดนาฬิกาหน่อยครับ

ขอโค้ดนาฬิกาหน่อยครับ

(1/1)

04_EnE:
16F877a แสดงผ่าน 7 segment+วงจร ผมเขียนไม่ถูกครับ อยากจะลองเอาไปศึกษาดู สนใจครับช่วยหน่อย

JUB:
http://www.electoday.com/bbs/viewthread.php?tid=18266&extra=page%3D2

Clock on 7Segment

http://www.youtube.com/v/WT70QdA_3k0
♥ ช่วงหลังๆมานี่ผมเริ่มเข้าใจการเขียนโปรแกรมแบบ state machine หรือ mutitask มากขึ้น
ผมเลยลองเขียนโปรแกรมง่ายๆโดยให้ความสำคัญกับ Human interface เป็นหลัก
คือการตอบสนองการสั่งงานจากผู้ใช้ได้ราบรื่นพร้อมกับทำงานอื่นๆไปได้โดยไม่สดุด

♥ ตัวอย่างที่ผมเสนอนี้คือการตั้งค่าเวลาพร้อมๆกับสแกน7เซ็กเม็น+กระพริบ+ฐานเวลา
ที่ทำงานไปพร้อมๆกัน โดยอาศัย Timer0 เพียงตัวเดียว

♦♦♦ รายละเอียดโปรแกรม ♦♦♦
♥ แต่ละหลักสามารถสั่งกระพริบได้อิสระโดยสั่งผ่าน
BLINKDIGIT1,BLINKDIGIT2,BLINKDIGIT3,BLINKDIGIT4,
ความถี่ของการกระพริบปรับได้ที่ BlinkInterval โดยเวลาที่ใช้
จะได้ไม่เกิน ms = 5*255
การคุม DOT คุมผ่าน DOT1,DOT2,DOT3,DOT4,

♥ ในขณะตั้งค่านั้นจะสั่งให้ 7เซ็กเม็นหยุดกระพริบชั่วครู่เพื่อจะได้มอง
ตัวเลขได้ถนัด คือ function BlinkDisMoment เมื่อเรียก function นี้
7เซ็กเม็นจะหยุดกระพริบ1วินาทีหลังจากนั้นจะกลับมากระพริบตามเดิม
ถ้า BLINKDIGIT1,BLINKDIGIT2,BLINKDIGIT3,BLINKDIGIT4, ยังถูกเซต
โดยค่าของการหน่วงอยู่ที่ BLINKOVF และ BLINKENABLE เป็นตัวเปิดปิด
การกระพริบแบบรวม

♥ ในโหมดปรกติสามารถกดดูเวลาในหลักวินาทีได้และไม่สามารถตั้งเวลาได้ในโหมดนี้
โดยมี MODESWITCH เป็นตัวกำหนด

♥ Clock Base เป็นแค่การแสดงให้เห็นการทำงานต่างๆเท่านั้น เวลาที่ได้จึงมีความ
คลาดเคลื่อนอยู่ ควรนำไปปรับใช้กับ DS1307

นำร่อง

[0] ดัชนีข้อความ