PCD
#byte
PORTB
=
6
//Just an example, check the
#define ALL_OUT 0
//DATA sheet for the correct
#define ALL_IN
0xff
//address for your chip
main() {
int i;
set_tris_b(ALL_OUT);
PORTB = 0;// Set all pins low
for(i=0;i<=127;++i)
PORTB=i;
set_tris_b(ALL_IN);
i = PORTB;
// Quickly count from 0 to 127
// on the I/O port pin
// i now contains the portb value.
}
Remember when using the #BYTE, the created variable is treated like memory. You must
maintain the tri-state control registers yourself via the SET_TRIS_X function. Following is an
example of placing a structure on an I/O port:
struct
port_b_layout
{int data : 4;
int rw : 1;
int cd : 1;
int enable : 1;
int reset
: 1; };
struct
port_b_layout
port_b;
#byte port_b
= 6
struct port_b_layout
struct port_b_layout
struct port_b_layout
const
const
const
INIT_1
INIT_2
INIT_3
= {0, 1,1, 1,1 };
= {3, 1,1, 1,0 };
= {0, 0,0, 0,0 };
struct port_b_layout
const
FOR_SEND = {0,0,0, 0,0 };
// All outputs
struct
port_b_layout
const
FOR_READ = {15,0,0, 0,0 };
// Data is an input
main() {
int x;
set_tris_b((int)FOR_SEND);
// The constant
// structure is
// treated like
// a byte and
// is used to
// set the data
// direction
port_b = INIT_1;
delay_us(25);
port_b = INIT_2;
port_b = INIT_3;
//
//
//
//
These constant structures delay_us(25);
are used to set all fields
on the port with a single
command
set_tris_b((int)FOR_READ);
port_b.rw=0;
// Here the individual
332
port_b.cd=1;
port_b.enable=0;
x = port_b.data;
// fields are accessed
// independently.
相关PDF资料
PCI-EXP-T42G5-N1 IP CORE PCI EXPRESS ORCA 4
PCM18XH2 PROCESSOR MODULE MPLAB-ICE 2000
PCM18XN0 PROCESSOR MODULE FOR ICE2000
PDA-B-24-615-E-2B1-1-C CIRCUIT BREAKER MAG 1P 15A
PFMF.260.2 PFMF PTC FUSE SMT 2.6A 1812
PFNF.200.2 PFNF PTC FUSE SMT 2A 1206
PFRY.375 PTC-FUSE RADIAL 72 VDC
PFSM.150.33.2 FUSE PTC 8A 15V FST-TRIP SMD
相关代理商/技术参数
PCD_09 制造商:MACOM 制造商全称:Tyco Electronics 功能描述:Low Profile PCB Relay PCD
PCD-00173-0C 制造商:Molex 功能描述:ETHERNET CABLE ASSEMBLY
PCD-00173-0E 制造商:Molex 功能描述:Ethernet Cable Assembly
PCD-00173-0H 制造商:Molex 功能描述:ETHERNET CABLE ASSEMBLY
PCD-00173-0K 制造商:Molex 功能描述:ETHERNET CABLE ASSEMBLY
PCD-00174-0C 制造商:Molex 功能描述:ETHERNET CABLE ASSEMBLY 制造商:Molex 功能描述:ETHERNET CABLE ASSEMBLY; Cable Length - Imperial:3ft; Cable Length - Metric:914.4mm; Connector Type A:RJ45 Plug; Connector Type B:RJ45 Plug; Jacket Color:Red; Approval Bodies:CSA / UL; Body Material:PVC; Cable Assembly Type:Ethernet ;RoHS Compliant: NA
PCD-00174-0E 制造商:Molex 功能描述:ETHERNET CABLE ASSEMBLY 制造商:Molex 功能描述:ETHERNET CABLE ASSEMBLY; Cable Length - Imperial:3ft; Cable Length - Metric:914.4mm; Connector Type A:RJ45 Plug; Connector Type B:RJ45 Plug; Jacket Color:Grey; Approval Bodies:CSA / UL; Body Material:PVC; Cable Assembly Type:Ethernet;RoHS Compliant: NA
PCD-00174-0H 制造商:Molex 功能描述:ETHERNET CABLE ASSEMBLY