English
Language : 

SH7047F Datasheet, PDF (52/85 Pages) Renesas Technology Corp – Renesas 32-Bit RISC Microcomputer SuperH RISC engine Family/SH7047 Series
4.5 Transmission Program Listing
/********************************************************************************/
/*
HCAN-2 Transmission Program (Example 4)
*/
/********************************************************************************/
#include <stdio.h>
/* Library function header file */
#include <machine.h>
/* Library function header file */
#include "SH7047.h"
/* Peripheral register definition header file */
/********************************************************************************/
/*
Function prototype declaration
*/
/********************************************************************************/
void t_main(void );
/********************************************************************************/
/*
Main routine
*/
/********************************************************************************/
void t_main(void){
unsigned short *work;
/* Clear bit MCR0 */
HCAN_MCR = 0x0000;
/* Clear reset request bit,
identifier priority-based transmission */
/* Clear bit IRR0 */
HCAN_IRR = 0x0001;
/* Clear reset interrupt flag (to clear, write 1) */
/* Set pins */
PB.PBCR1 = 0x0000;
/* Set PB HCAN-2 */
PB.PBCR2 = 0x000F;
/* Set PB HCAN-2 */
/* Set bit rate (BCR): bit rate is 250 kbps when φ = 50 MHz */
HCAN_BCR0 = 0x0009;
/* BRP=9(10 system clock) */
HCAN_BCR1 = 0x4300;
/* TSEG1=4(5tq),TSEG2=3(4tq) */
/* Initialize mailboxes */
work = (unsigned short *)0xFFFFB100;
do {
*work = 0xFFFF;
work++;
} while(work < (unsigned short *)0xFFFFB4F4);
/* Set transmission data */
/*** MB1 ***/
HCAN_MB1.MC4 = 0x01;
HCAN_MB1.MC0 = 0x6660;
set identifier */
HCAN_MB1.MC5 = 0x08;
HCAN_MB1.MD7 = 0x11;
HCAN_MB1.MD8 = 0x11;
HCAN_MB1.MD9 = 0x11;
HCAN_MB1.MD10 = 0x11;
HCAN_MB1.MD11 = 0x11;
HCAN_MB1.MD12 = 0x11;
HCAN_MB1.MD13 = 0x11;
HCAN_MB1.MD14 = 0x11;
/* Set mailbox 1 as for transmission */
/* Select data frame and standard format,
/* Set data length: 8 bytes */
/* Set transmission data: 00010001 */
/* Set transmission data: 00010001 */
/* Set transmission data: 00010001 */
/* Set transmission data: 00010001 */
/* Set transmission data: 00010001 */
/* Set transmission data: 00010001 */
/* Set transmission data: 00010001 */
/* Set transmission data: 00010001 */
Rev. 1.00, 08/03, page 44 of 74