r_pdl_ppg.h 3.2 KB
Newer Older
淡漠想敏's avatar
淡漠想敏 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105
/*""FILE COMMENT""*******************************************************
* System Name	: PPG API for RX62Nxx
* File Name		: r_pdl_PPG.h
* Version		: 1.02
* Contents		: PPG API header
* Customer		: 
* Model			: 
* Order			: 
* CPU			: RX
* Compiler		: RXC
* OS			: Nothing
* Programmer	: 
* Note			: 
************************************************************************
* Copyright, 2011. Renesas Electronics Corporation
* and Renesas Solutions Corporation
************************************************************************
* History		: 2011.04.08
*				: Ver 1.02
*				: CS-5 release.
*""FILE COMMENT END""**************************************************/

#ifndef R_PDL_PPG_H
#define R_PDL_PPG_H

#include "r_pdl_common_defs_RX62Nxx.h"

/* Function prototypes */
bool R_PPG_Create(
	uint32_t,
	uint16_t,
	uint8_t
);
bool R_PPG_Destroy(
	uint32_t
);
bool R_PPG_Control(
	uint32_t,
	uint8_t
);

/* Output pin selection */
#define PDL_PPG_PO0		(PDL_PPG_GROUP_0 | 0x01u)
#define PDL_PPG_PO1		(PDL_PPG_GROUP_0 | 0x02u)
#define PDL_PPG_PO2		(PDL_PPG_GROUP_0 | 0x04u)
#define PDL_PPG_PO3		(PDL_PPG_GROUP_0 | 0x08u)
#define PDL_PPG_PO4		(PDL_PPG_GROUP_1 | 0x10u)
#define PDL_PPG_PO5		(PDL_PPG_GROUP_1 | 0x20u)
#define PDL_PPG_PO6		(PDL_PPG_GROUP_1 | 0x40u)
#define PDL_PPG_PO7		(PDL_PPG_GROUP_1 | 0x80u)
#define PDL_PPG_PO8		(PDL_PPG_GROUP_2 | 0x01u)
#define PDL_PPG_PO9		(PDL_PPG_GROUP_2 | 0x02u)
#define PDL_PPG_PO10	(PDL_PPG_GROUP_2 | 0x04u)
#define PDL_PPG_PO11	(PDL_PPG_GROUP_2 | 0x08u)
#define PDL_PPG_PO12	(PDL_PPG_GROUP_3 | 0x10u)
#define PDL_PPG_PO13	(PDL_PPG_GROUP_3 | 0x20u)
#define PDL_PPG_PO14	(PDL_PPG_GROUP_3 | 0x40u)
#define PDL_PPG_PO15	(PDL_PPG_GROUP_3 | 0x80u)
#define PDL_PPG_PO16	(PDL_PPG_GROUP_4 | 0x01u)
#define PDL_PPG_PO17	(PDL_PPG_GROUP_4 | 0x02u)
#define PDL_PPG_PO18	(PDL_PPG_GROUP_4 | 0x04u)
#define PDL_PPG_PO19	(PDL_PPG_GROUP_4 | 0x08u)
#define PDL_PPG_PO20	(PDL_PPG_GROUP_5 | 0x10u)
#define PDL_PPG_PO21	(PDL_PPG_GROUP_5 | 0x20u)
#define PDL_PPG_PO22	(PDL_PPG_GROUP_5 | 0x40u)
#define PDL_PPG_PO23	(PDL_PPG_GROUP_5 | 0x80u)
#define PDL_PPG_PO24	(PDL_PPG_GROUP_6 | 0x01u)
#define PDL_PPG_PO25	(PDL_PPG_GROUP_6 | 0x02u)
#define PDL_PPG_PO26	(PDL_PPG_GROUP_6 | 0x04u)
#define PDL_PPG_PO27	(PDL_PPG_GROUP_6 | 0x08u)
#define PDL_PPG_PO28	(PDL_PPG_GROUP_7 | 0x10u)
#define PDL_PPG_PO29	(PDL_PPG_GROUP_7 | 0x20u)
#define PDL_PPG_PO30	(PDL_PPG_GROUP_7 | 0x40u)
#define PDL_PPG_PO31	(PDL_PPG_GROUP_7 | 0x80u)

/* Output trigger selection */
#define PDL_PPG_TRIGGER_MTU0	0x0001u
#define PDL_PPG_TRIGGER_MTU1	0x0002u
#define PDL_PPG_TRIGGER_MTU2	0x0004u
#define PDL_PPG_TRIGGER_MTU3	0x0008u
#define PDL_PPG_TRIGGER_MTU6	0x0010u
#define PDL_PPG_TRIGGER_MTU7	0x0020u
#define PDL_PPG_TRIGGER_MTU8	0x0040u
#define PDL_PPG_TRIGGER_MTU9	0x0080u

/* Non-overlap control */
#define PDL_PPG_NORMAL			0x0100u
#define PDL_PPG_NON_OVERLAP		0x0200u

/* Invert control */
#define PDL_PPG_DIRECT			0x0400u
#define PDL_PPG_INVERT			0x0800u

/* Group selection */
#define PDL_PPG_GROUP_0	0x00000100u
#define PDL_PPG_GROUP_1	0x00110200u
#define PDL_PPG_GROUP_2	0x00220400u
#define PDL_PPG_GROUP_3	0x00330800u
#define PDL_PPG_GROUP_4	0x01041000u
#define PDL_PPG_GROUP_5	0x01152000u
#define PDL_PPG_GROUP_6	0x01264000u
#define PDL_PPG_GROUP_7	0x01378000u

#endif
/* End of file */