Electoday 2025

ไมโครคอนโทรลเลอร์ => AVR and Arduino => Topic started by: tha on October 04, 2019, 08:09:22 AM

Title: Atmega328P Datasheet 19. TC0-8-bit Timer/Counter0 with PWM
Post by: tha on October 04, 2019, 08:09:22 AM
จะขึ้นเรื่อง TC0 แล้วนะ แต่ก็ชักจะลืมแล้วเรื่อง timer/counter ต้องอ่านหนังสือ AVR ภาษาไทยกอนสักหน่อย ซื้อมาไว้แล้ว ให้รู้ภาพกว้างๆไว้ก่อน ก่อนที่จะไปแปลภาษาอังกฤษจะได้ง่ายขึ้น เดาทางได้ ถ้าไปอ่านคู่มือภาษาอังกฤษเลยก็กลัวจะมีมั่ว   :)
         http://www.appsofttech.com/store/product/view/%E0%B8%AB%E0%B8%99%E0%B8%B1%E0%B8%87%E0%B8%AA%E0%B8%B7%E0%B8%AD%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B9%80%E0%B8%82%E0%B8%B5%E0%B8%A2%E0%B8%99%E0%B9%82%E0%B8%9B%E0%B8%A3%E0%B9%81%E0%B8%81%E0%B8%A3%E0%B8%A1%E0%B8%84%E0%B8%A7%E0%B8%9A%E0%B8%84%E0%B8%B8%E0%B8%A1%E0%B9%84%E0%B8%A1%E0%B9%82%E0%B8%84%E0%B8%A3%E0%B8%AF_AVR_%E0%B8%94%E0%B9%89%E0%B8%A7%E0%B8%A2%E0%B8%A0%E0%B8%B2%E0%B8%A9%E0%B8%B2_C_%E0%B9%80%E0%B8%A5%E0%B9%88%E0%B8%A1_1-19590643-th.html  (http://www.appsofttech.com/store/product/view/%E0%B8%AB%E0%B8%99%E0%B8%B1%E0%B8%87%E0%B8%AA%E0%B8%B7%E0%B8%AD%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B9%80%E0%B8%82%E0%B8%B5%E0%B8%A2%E0%B8%99%E0%B9%82%E0%B8%9B%E0%B8%A3%E0%B9%81%E0%B8%81%E0%B8%A3%E0%B8%A1%E0%B8%84%E0%B8%A7%E0%B8%9A%E0%B8%84%E0%B8%B8%E0%B8%A1%E0%B9%84%E0%B8%A1%E0%B9%82%E0%B8%84%E0%B8%A3%E0%B8%AF_AVR_%E0%B8%94%E0%B9%89%E0%B8%A7%E0%B8%A2%E0%B8%A0%E0%B8%B2%E0%B8%A9%E0%B8%B2_C_%E0%B9%80%E0%B8%A5%E0%B9%88%E0%B8%A1_1-19590643-th.html)
Title: Re: Atmega328P Datasheet 19. TC0-8-bit Timer/Counter0 with PWM
Post by: tha on October 05, 2019, 05:39:46 AM
เคร ตกลงแปลต่อ ขออ่านหนังสือสักวันสองวัน
Title: Re: Atmega328P Datasheet 19. TC0-8-bit Timer/Counter0 with PWM
Post by: tha on October 07, 2019, 06:05:31 PM
ไม่แปลแล้วนะ ทีมคงจะบอกมา มีผลกระทบอะไรบ้างหล่ะ ให้ไปดูอย่างอื่นใช่ไหม ขออภัยท่านที่ติดตามมา ณ ที่นี้ด้วยครับ
Title: Re: Atmega328P Datasheet 19. TC0-8-bit Timer/Counter0 with PWM
Post by: tha on October 11, 2019, 05:01:25 PM
ตกลงให้แปลกันต่อนะ น่าจะมีข้อดีมากกว่าข้อเสียใช่ไหม ช่วงนี้กำแพงเพชรจะเข้าหน้าหนาวแล้ว เย็นสบายอย่างนี้ คงจะแปลได้ลื่น พอถึงหน้าร้อนต้องขอห้องแอร์นะ ไม่งั้นก็ต้องหยุดยาวไปเลย ต่อให้เก่งแค่ไหนอีก สาเหตุที่ประเทศไทยไม่เจริญทางด้านวัตถุ ร้อน
Title: Re: Atmega328P Datasheet 19. TC0-8-bit Timer/Counter0 with PWM
Post by: tha on October 12, 2019, 09:05:12 AM
19. TC0 - 8-bit Timer/Counter0 with PWM
ลิงค์ที่เกี่ยวข้อง
Timer/Counter0 and Timer/Counter1 Prescalers ในหน้า 186

19.1. Features (คุณสมบัติ)
   • Two independent Output Compare Units
   • Double Buffered Output Compare Registers
   • Clear Timer on Compare Match (Auto Reload)
   • ไม่มีปัญหาเล็กๆน้อยๆ, phase correct Pulse Width Modulator (PWM)
   • Variable(ซึ่งเปลี่ยนแปลงได้) PWM period
   • Frequency generator
   • Three independent interrupt sources (TOV0, OCF0A, and OCF0B)

Timer/Counter0 (TC0) เป็น general purpose 8-bit Timer/Counter module, มี 2 independent Output Compare Units, และรองรับ PWM. ช่วยให้กำหนดเวลาดำเนินการโปรแกรมอย่างแม่นยำ (การจัดการเหตุการณ์) และ wave generation.

block diagram อย่างง่ายๆของ 8-bit Timer/Counter ถูกแสดงที่ข้างล่างนี้. CPU accessible(สามารถเข้าถึงได้) I/O Registers, พร้อมด้วย I/O bits และ I/O pins, ถูกแสดงเป็นตัวหนา. device-specific I/O Register และตำแหน่งบิตถูกระบุไว้ใน Register Description. สำหรับการจัดวางจริงๆของ I/O pins, โปรดดู pinout diagram.

TC0 ถูกเปิดใช้งานโดยการเขียนบิต PRTIM0 ใน "Minimizing Power Consumption" ให้เป็น '0'.

TC0 ถูกเปิดใช้งานเมื่อบิต PRTIM0 ใน Power Reduction Register (PRR.PRTIM0) ถูกเขียนเป็น '1'

(https://i.imgur.com/pcQMasr.png)
Title: Re: Atmega328P Datasheet 19. TC0-8-bit Timer/Counter0 with PWM
Post by: tha on October 14, 2019, 09:51:48 AM
19.2.1. Definitions (คำนิยาม)
การอ้างอิงถึง register และ bit จำนวณมากในบทนี้ถูกเขียนในรูปแบบทั่วไปนี้ :
• n=0 หมายถึง Timer/Counter number
• x=A,B หมายถึง Output Compare Unit A หรือ B

อย่างไรก็ตามเมื่อใช้ register หรือ bit definitions ใน program, รูปแบบที่แน่นอนต้องถูกใช้ เช่น TCNT0 สำหรับการเข้าถึง Timer/Counter0 counter value.

คำจำกัดความต่อไปนี้ถูกนำมาใช้ตลอดทั้งบทนี้ :

(https://i.imgur.com/L0rvUMb.png)
(https://i.imgur.com/D6TUBF3.png)

BOTTOM   ตัวนับถึง BOTTOM เมื่อมันกลายเป็นศูนย์ (0x00 สำหรับ 8-bit counters, หรือ 0x0000 สำหรับ 16-bit counters).

MAX   ตัวนับถึงค่า Maximum ของมันเมื่อมันกลายเป็น 0xFF (255 ฐานสิบ, สำหรับ 8-bit counters) หรือ 0xFFFF (65535 ฐานสิบ, สำหรับ 16-bit counters).

TOP  ตัวนับถึง TOP เมื่อมันกลายเป็นเท่ากับค่าสูงสุดในลำดับการนับ ค่า TOP สามารถถูกกำหนดให้เป็นค่าคงที่ MAX หรือค่าที่เก็บไว้ใน OCR0A Register. การกำหนดนี้ขึ้นอยู่กับโหมดการทำงาน

ปล. เอาเรื่องจิตใจสักหน่อย ธรรมสมาทาน 4 เอาสุขหรือเอาทุกข์ก่อนดีหล่ะ เอาทุกข์ก่อนก็ปฏิบัติธรรม นั่งสมาธิกำหนดลมหายใจเข้าออก หายใจเข้าพุท หายใจออกโธ ก็จะเครียดหน่อยในตอนแรกๆ นานไปก็จะดีขึ้นตามลำดับ ทำให้ลมหายใจยาวละเอียดดีด้วย ไม่ค่อยเป็นหวัดเป็นไอ มีสมาธิดีด้วย อ่านหนังสือได้ดี ไม่มีนิวรณ์มากวนครับ
http://www.84000.org/tipitaka/dic/d_item.php?i=145 (http://www.84000.org/tipitaka/dic/d_item.php?i=145)
http://www.84000.org/tipitaka/dic/ (http://www.84000.org/tipitaka/dic/)
Title: Re: Atmega328P Datasheet 19. TC0-8-bit Timer/Counter0 with PWM
Post by: tha on October 16, 2019, 07:25:06 AM
19.2.2. Registers
Timer/Counter 0 register (TCNT0) และ Output Compare TC0x registers (OCR0x) เป็น 8-bit registers. Interrupt request (ตัวย่อคือ Int.Req. ใน block diagram) signals ถูกมองเห็นได้ทั้งหมดใน Timer Interrupt Flag Register 0 (TIFR0). ทุก interrupts จะถูกกำหนดเป็นราย interrupt ไปด้วยรีจีสเตอร์ Timer Interrupt Mask Register 0 (TIMSK0). TIFR0 และ TIMSK0 ไม่ถูกแสดงในรูปนี้.

TC สามารถถูกให้สัญญานนาฬิกาภายในโดยทาง prescaler, หรือโดยสัญญานนาฬิกาภายนอกบน T0 pin. Clock Select logic block ควบคุมแหล่งที่มาของสัญญานนาฬิกาและขอบขาที่ถูกใช้โดย Timer/Counter เพื่อเพิ่ม(หรือลด) ค่าของมัน. TC ไม่ทำงานเมื่อไม่ได้เลือกแหล่งสัญญาณนาฬิกา. output จาก Clock Select logic เรียกว่า timer clock (clkT0).

The double buffered Output Compare Registers (OCR0A และ OCR0B) ถูกเปรียบเทียบกับค่า Timer/Counter ตลอดเวลา. ผลของการเปรียบเทียบสามารถถูกใช้โดย Waveform Generator เพื่อสร้าง PWM หรือ variable frequency output บน Output Compare pins (OC0A และ OC0B). ดูที่ Output Compare Unit สำหรับรายละเอียด. The compare match event จะเซท Compare Flag (OCF0A หรือ OCF0B) อีกด้วย ซึ่งสามารถถูกใช้สร้าง Output Compare interrupt request.

ลิ้งค์ที่เกี่ยวข้อง
Timer/Counter 0, 1 Prescalers บนหน้า 186

19.3. Timer/Counter Clock Sources
TC สามารถถูกให้สัญญานนาฬิกาโดยแหล่งนาฬิกาภายในหรือแหล่งสัญญานนาฬิกาภายนอก แหล่งสัญญานนาฬิกาถูกเลือกโดยการเขียนไปยังบิท Clock Select (CS0[2:0]) ใน Timer/Counter Control Register (TCCR0B).
Title: Re: Atmega328P Datasheet 19. TC0-8-bit Timer/Counter0 with PWM
Post by: tha on November 16, 2019, 12:05:21 PM
วัตถุเจริญ แต่จิตใจคนเสื่อม เฮ้อ ไม่เอาหล่ะ เอาธรรมะ พัฒนาจิตใจดีกว่า
Title: Re: Atmega328P Datasheet 19. TC0-8-bit Timer/Counter0 with PWM
Post by: moneyp1000 on March 06, 2020, 08:49:15 AM
แปลต่อเลยครับพี่ เป็นกำลังใจให้ครับผมตามอ่านทุกหน้าเลยครับ
Title: Re: Atmega328P Datasheet 19. TC0-8-bit Timer/Counter0 with PWM
Post by: tha on March 21, 2020, 07:31:54 AM
มันร้อนนะ ไม่ไหวหรอก หน้าร้อนแล้วต้องจอดป้าย อ่านหนังสือธรรมะยังได้แค่ 2 หน้าเลย สาเหตุที่ประเทศไทยไม่เจริญทางด้านวัตถุเทคโนโลยี่ ไม่ได้หนาวเย็นมีหิมะตกอย่าง ญี่ปุ่น เกาหลี จีน ยุโรป เมกาเขาใช่ไหม ดูสถานะการณ์ก่อนนะ ไม่รู้จะกลับมาไหม ขอบคุณที่ติดตามครับ
Title: Re: Atmega328P Datasheet 19. TC0-8-bit Timer/Counter0 with PWM
Post by: tha on March 21, 2020, 07:52:51 AM
สรุปไม่ให้กลับมาแล้วใช่ไหม ต้องไปดูเรื่องอื่นนะ อย่างเรื่องจิตใจ อ่านภาวนาธรรมะ ปฏิบัติธรรม เรื่องชีวิต เรื่องธรรมชาติ
Title: Re: Atmega328P Datasheet 19. TC0-8-bit Timer/Counter0 with PWM
Post by: moneyp1000 on March 24, 2020, 11:42:15 PM
Quote from: tha on March 21, 2020, 07:52:51 AM
สรุปไม่ให้กลับมาแล้วใช่ไหม ต้องไปดูเรื่องอื่นนะ อย่างเรื่องจิตใจ อ่านภาวนาธรรมะ ปฏิบัติธรรม เรื่องชีวิต เรื่องธรรมชาติ

กลับสิครับพี่ รออ่านอยู่นะครับ เบื่อๆ ผมก็มีไปแนวธรรมะบ้างนะครับ ช่วงนี้ผมไปรวบรวมข้อมูลแนว โควิด19 อยู่นะครับพี่ 555
Title: Re: Atmega328P Datasheet 19. TC0-8-bit Timer/Counter0 with PWM
Post by: tha on August 30, 2020, 06:21:47 AM
เดี๋ยวจะกลับมาแปลต่อแล้วนะครับ เตรียมตัวกันเอาไว้ ผมขอใช้เวลาทบทวนสักหน่อยก่อน

หลังจากเอาความโกรธความอยากออกจากใจจนหมดแล้ว นั่งสมาธิก็เป็นสมาธิดีแล้ว สมาธิยาว ไม่มีอะไรจะทำแล้ว มาแปลต่อดีกว่า

ตาเป็นต้อกระจก เลยหยุดไป ตอนนี้ทำตามาข้างแล้ว ค่อยๆแปลไป ของอะไรมันต้องใช้เวลาครับ
Title: Re: Atmega328P Datasheet 19. TC0-8-bit Timer/Counter0 with PWM
Post by: tha on August 31, 2020, 12:02:22 PM
สรุปแล้วไม่ให้แปลแล้วใช่ไหม ไม่แปลแล้วนะ
เมืองไทยเราเป็นเมืองร้อนนะ ร้อนมันอ่านหนังสือไม่ได้ คิดอะไรยากๆไม่ได้ เลยไม่เจริญทางด้านวัตถุเทคโนโลยี่
ให้เอาเรืองจิตใจอย่างเดียวนะ เจริญภาวนาธรรมะ ปฏิบัติธรรม นั่งสมาธิเดินจงกรม เจริญทางด้านจิตใจเอานะครับ
ขอโทษด้วยนึกว่าให้กลับมาแปลอีก