Bộ phát sinh xung clock (PPG) cung cấp xung nhịp xuất bằng cách sử dụng bộ đếm xung 16-bit (TPU) với vai trò làm chuẩn thời gian. Tín hiệu xuất của PPG được chia thành các nhóm 4-bit (các nhóm 3 và 2) mà có thể phát sinh cảđồng thời và độc lập. Dữ liệu xuất 8-bit 2 nhóm xuất (nhóm 2 và 3, mỗi nhóm 4-bit) Có thể lựa chọn tín hiệu trigger xuất Có thể thiết lập đảo ngõ xuất 12.3 Các thanh ghi của PPG
12.3.1 Thanh ghi cho phép dữ liệu kế tiếp H (NDERH)
Thanh ghi NDERH và NDERL cho phép/cấm xung xuất theo từng bit.
NDERH
NDERL
NDERH
Bit Tên bit Giá trị
khởi đầu R/W Đặc tả 7 NDER15 0 R/W 6 NDER14 0 R/W 5 NDER13 0 R/W 4 NDER12 0 R/W 3 NDER11 0 R/W Các bit cho phép dữ liệu kế tiếp (15 đến 8).
Khi một bit bằng 1, thì giá trị bit tương ứng trong thanh ghi NDRH sẽ được truyền đến bit PODRH bởi
2 NDER10 0 R/W
1 NDER9 0 R/W
0 NDER8 0 R/W
trigger xuất được lựa chọn. Ngược lại (bit NDRH bằng 0) thì dữ liệu sẽ không được truyền.
NDERL
Bit Tên bit Giá trị khởi đầu
R/W Đặc tả
7 NDER7 0 R/W Các bit cho phép dữ liệu kế tiếp (7 đến 0).
Khi một bit trong thanh ghi này bằng 1, bit tương ứng với nó trong thanh ghi NDRL sẽđược truyền sang bit trong thanh ghi PODRL bởi một trigger được chọn. Các bit sẽ không được truyền nếu các bit trong thanh ghi này bị xóa.
12.3.2 Thanh ghi cho phép dữ liệu kế tiếp L (NDERL)
Thanh ghi PODRH và PODRL lưu trữ dữ liệu xuất để dùng trong tín hiệu xuất. Một bit được thiết lập là xung xuất bởi NDER chỉ được phép đọc và không thể hiệu chỉnh giá trị.
PODRH
PODRL
PODRH
Bit Tên
bit khởi đầu Giá trị R/W Đặc tả
7 POD15 0 R/W 6 POD14 0 R/W 5 POD13 0 R/W 4 POD12 0 R/W 3 POD11 0 R/W 2 POD10 0 R/W 1 POD9 0 R/W 0 POD8 0 R/W Các bit dữ liệu xuất (15 – 8)
Với các bit mà được thiết lập là xung xuất bởi thanh ghi NDERH, giá trị trong NDRH sẽđược truyền sang thanh ghi này trong quá trình hoạt động PPG. Khi NDERH được set lên 1, CPU không thể ghi vào thanh ghi này. Khi thanh ghi NDERH bị xóa, thì giá trị khởi động của xung sẽđược thiết lập.
PODRL Bit Tên bit Giá trị khởi đầu R/W Đặc tả
7 POD7 0 R/W 6 POD6 0 R/W 5 POD5 0 R/W 4 POD4 0 R/W 3 POD3 0 R/W 2 POD2 0 R/W 1 POD1 0 R/W 0 POD0 0 R/W Các bit dữ liệu xuất (7 – 0)
Với các bit mà được thiết lập là xung xuất bởi thanh ghi NDERL, giá trị trong NDRL sẽđược truyền sang thanh ghi này trong quá trình hoạt động PPG. Khi NDERL được set lên 1, CPU không thể ghi vào thanh ghi này. Khi thanh ghi NDERL bị xóa, thì giá trị khởi động của xung sẽđược thiết lập.
12.3.3 Thanh ghi dữ liệu xuất L, H (PODRH)
Thanh ghi PODRH và PODRL lưu trữ dữ liệu xuất để dùng trong tín hiệu xuất. Một bit được thiết lập là xung xuất bởi NDER chỉ được phép đọc và không thể hiệu chỉnh giá trị.
PODRH
PODRL
12.3.4 Thanh ghi dữ liệu kế tiếp L, H (NDRH)
Thanh ghi NDRH và NDRL lưu trữ dữ liệu kế tiếp cho tín hiệu xuất. Địa chỉ của NDR khác nhau phụ thuộc vào nhóm tín hiệu xuất có cùng trigger xuất hay có các trigger xuất khác nhau.
NDRH
NDRL
12.3.5 Thanh ghi điều khiển xuất PPG (PCR)
Thanh ghi PCR lựa chọn các tín hiệu trigger xuất theo từng nhóm. Chi tiết về việc lựa chọn trigger xuất, tham khảo phần 11.3.5, Thanh ghi chếđộ xuất PPG (PMR)
Bit Tên bit Giá trị
khởi đầu R/W Đặc tả
7 G3CMS1 1 R/W
6 G3CMS0 1 R/W
Bit lựa chọn compare match cho nhóm 3 Các bit này lựa chọn trigger xuất cho xung xuất nhóm 3.
00: compare match trên kênh 0 của TPU 01: compare match trên kênh 1 của TPU 10: compare match trên kênh 2 của TPU 11: compare match trên kênh 3 của TPU
5 G2CMS1 1 R/W
4 G2CMS0 1 R/W
Bit lựa chọn compare match cho nhóm 2 Các bit này lựa chọn trigger xuất cho xung xuất nhóm 2.
00: compare match trên kênh 0 của TPU 01: compare match trên kênh 1 của TPU 10: compare match trên kênh 2 của TPU 11: compare match trên kênh 3 của TPU
3-0 --- 1 R/W Không dùng.
Các bit này luôn luôn có giá trị là 1, và không thể ghi vào các bit này.
12.3.6 Thanh ghi chế độ xuất PPG (PMR)
Thanh ghi PMR lựa chọn chếđộ xung xuất của PPG cho từng nhóm. Nếu lựa chọn đảo tín hiệu xuất, thì mức thấp của xung sẽđược xuất ra khi giá trị trong PODRH là 1 và một mức cao của xung sẽ được xuất ra khi giá trị của PODRH là 0. Nếu hoạt động non-overlapping được lựa chọn, thì PPG sẽ cập nhật giá trị xuất của nó khi có hoạt động compare match trên thanh ghi A hay B của TPU. Chi tiết tham khảo phần 11.4.4, Xung xuất Non-overlapping.
Bit Tên bit Giá trị
khởi đầu R/W Đặc tả 7 G3INV 1 R/W Đảo nhóm 3 0: Đảo tín hiệu xuất 1: Tín hiệu xuất trực tiếp 6 G2INV 1 R/W Đảo nhóm 2 0: Đảo tín hiệu xuất 1: Tín hiệu xuất trực tiếp 5, 4 --- 1 R/W Không dùng
Các bit này luôn có giá trị là 1. 3 G3NOV 0 R/W Bit Non-Overlap nhóm 3
0: Chếđộ bình thường (các giá trị xuất được cập nhật khi có hoạt động compare match A trong kênh TPU đã được chọn) 1: Chếđộ hoạt động non-overlapping (giá trị xuất sẽđược cập nhật khi có hoạt động compare match A hay B trên kênh TPU đã được chọn)
2 G2NOV 0 R/W Bit Non-Overlap nhóm 2 0: Chếđộ bình thường
1: Chếđộ hoạt động non-overlapping 1, 0 --- 0 R/W Không dùng
Các bit này luôn có giá trị là 0. Việc ghi giá trị vào các bit này thi nên ghi vào các giá trị 0.
12.4 Các chế độ hoạt động
12.4.1 Chế độ hoạt động bình thường
Trong chế độ bình thường, xung xuất của PPG được cho phép khi các bit tương ứng của nó trong thanh ghi NDER được thiết lập là 1. Giá trị ban đầu được chỉ định bởi việc thiết lập các bit tương ứng trong thanh ghi PODR. Khi có hoạt động compare match xảy ra, thì nội dung của bit tương ứng trong thanh ghi NDR sẽđược chuyển vào PODR để cập nhật lại giá trị xuất
12.4.2 Chế độ hoạt động non-overlapping
Trong hoạt động non-overlapping, thì hoạt động truyền từ thanh ghi NDR sang PODR được thực hiện như sau:
- Khi hoạt động compare match A xảy ra, các bit trong thanh ghi NDR luôn được truyền sang PODR.
- Khi hoạt động compare match B xảy ra, các bit trong thanh ghi NDR chỉ được truyền khi giá trị của nó là 0, các bit có giá trị 1 trong thanh ghi NDR sẽ không được truyền.
12.5 Ví dụ sử dụng PPG
Ví dụ sử dụng PPG để tạo ra nhóm xung 4-bit, để tạo thành dạng sóng trên các chân xuất PO12, PO13, P014, PO15 (P3_4, P3_5, P3_6, và P3_7). Trong ví dụ này sẽ sử dụng TPU0 kênh 3 để làm xung kích cho PPG trong việc tạo ra dạng sóng. Việc tạo ra dạng sóng sẽ được thực hiện bằng cách ghi giá trị tiếp theo với thanh ghi NDR. Xung TPU sẽđược thiết lập ở chếđộ chia 64 (24MHz/64).
Hàm khởi động PPG và TPU3: