Cypress CY7C638xx manual Clocking, Checksum Function, Checksum Parameters Name Address Description

Page 19

CY7C63310, CY7C638xx

9.5.8 Checksum Function

The Checksum function calculates a 16-bit checksum over a user specifiable number of blocks, within a single Flash macro (Bank) starting from block zero. The BLOCKID parameter is used to pass in the number of blocks to calculate the checksum over. A BLOCKID value of 1 calculates the checksum of only block 0, while a BLOCKID value of 0 calculates the checksum of all 256 user blocks. The 16-bit checksum is returned in KEY1 and KEY2. The parameter KEY1 holds the lower eight bits of the checksum and the parameter KEY2 holds the upper eight bits of the checksum.

The checksum algorithm executes the following sequence of three instructions over the number of blocks times 64 to be checksummed.

romx

add [KEY1], A adc [KEY2], 0

Table 9-12. Checksum Parameters

Name

Address

Description

KEY1

0,F8h

3Ah

 

 

 

KEY2

0,F9h

Stack Pointer value when SSC is

 

 

executed.

BLOCKID

0,FAh

Number of Flash blocks to calculate

 

 

checksum on.

When using the 32 kHz oscillator, the PITMRL/H registers must be read until 2 consecutive readings match before the result is considered valid. The following firmware example assumes the developer is interested in the lower byte of the PIT.

Read_PIT_counter: mov A, reg[PITMRL] mov [57h], A

mov A, reg[PITMRL] mov [58h], A

mov [59h], A

mov A, reg[PITMRL] mov [60h], A

;;;Start comparison mov A, [60h]

mov X, [59h] sub A, [59h] jz done mov A, [59h] mov X, [58h] sub A, [58h] jz done mov X, [57h]

;;;correct data is in memory location 57h done:

mov [57h], X ret

10. Clocking

The enCoRe II has two internal oscillators, the Internal 24 MHz Oscillator and the 32 kHz Low power Oscillator.

The Internal 24 MHz Oscillator is designed such that it may be trimmed to an output frequency of 24 MHz over temperature and voltage variation. With the presence of USB traffic, the Internal 24 MHz Oscillator may be set to precisely tune to the USB timing requirements (24 MHz ± 1.5%). Without USB traffic, the Internal 24 MHz Oscillator accuracy is 24 MHz ± 5% (between 0°–70°C). No external components are required to achieve this level of accuracy.

The internal low speed oscillator of nominally 32 kHz provides a slow clock source for the enCoRe II in suspend mode, particu- larly to generate a periodic wakeup interrupt and also to provide a clock to sequential logic during power up and power down events when the main clock is stopped. In addition, this oscillator can also be used as a clocking source for the Interval Timer clock (ITMRCLK) and Capture Timer clock (TCAPCLK). The 32 kHz Low power Oscillator can operate in low power mode or can provide a more accurate clock in normal mode. The Internal

32kHz Low power Oscillator accuracy ranges (between 0°–70° C) follow:

5V Normal mode: –8% to + 16%

5V LP mode: +12% to + 48%

Document 38-08035 Rev. *K

Page 19 of 83

[+] Feedback

Image 19
Contents San Jose, CA Document 38-08035 Rev. *K Revised December 08 FeaturesApplications Cypress Semiconductor Corporation 198 Champion CourtGpio Logic Block DiagramConventions IntroductionPinouts Die Pad Summary Pad Number Pad Name Microns Gpio Port 1 bit 0/USB D+ 1 If this pin is used as a Pin DescriptionGpio Port 1 bit 1/USB D- 1 If this pin is used as a Ground CPU ArchitectureNo connect SupplyFlags Register CPU RegistersAddressing Modes Destination Indexed Source Direct Opcode OperandSource Indexed Opcode Operand 10. Destination Direct Opcode Operand15. Source Indirect Post Increment Opcode Operand 12. Destination Direct Source Immediate Opcode Operand13. Destination Indexed Source Immediate Opcode Operand 14. Destination Direct Source Direct Opcode OperandInstruction Set Summary Sorted Numerically by Opcode Order2 Instruction Set SummaryEP0 EP1 EP2 Memory OrganizationFlash Program Memory Organization POR/LVD INT0Stack begins here and grows upward Data Memory OrganizationFlash SromReadBlock Parameters Name Address Description Srom Function DescriptionsSrom Function Parameters Variable Name Sram Address Srom Return Codes DescriptionBlock Block n Protection Modes Settings Description MarketingWriteBlock Parameters Name Address Description EraseBlock Parameters Name Address Description11. Return values for Table Read Table Number Return Value ProtectBlock Parameters Name Address DescriptionEraseAll Parameters Name Address Description 10. Table Read Parameters Name Address DescriptionSrom Table Checksum Function Clocking12. Checksum Parameters Name Address Description Clock Block Diagram Iosc Trim Iosctr 0x34 R/W Clock Architecture DescriptionBit 40 Gain Lposc Trim Lposctr 0x36 R/W CPU/USB Clock Config Cpuclkcr 0x30 R/WBit 41 Reserved Bit 76 Reserved Bit 5 No Buzz OSC Control 0 OSCCR0 0x1E0 R/W= Tcapclk USB Osclock Clock Configuration Osclckcr 0x39 R/WTimer Clock Config Tmrclkcr 0x31 R/W Bit 72 ReservedTimer Capture Clock Tcapclk Interval Timer Clock ItmrclkCou nte r Terru pt Ntro ller Document 38-08035 Rev. *K Clock IO Config Clkiocr 0x32 R/W CPU Clock During Sleep ModeReset Reset Watchdog Timer Reswdt 0xE3 W Sleep ModePower on Reset Watchdog Timer ResetWake up Sequence Sleep SequenceWake Up Timing Low Power in Sleep ModeBit 20 VM20 LVD Trip Point V Min Point V Typ Point V Max Low Voltage Detect ControlLow Voltage Control Register Lvdcr 0x1E3 R/W Bit 76 Reserved Bit 54 PORLEV10ECO Ecotr 0x1EB R/W Voltage Monitor Comparators Register Vltcmp 0x1E4 RBit 72 Reserved Bit 1 LVD ECO Trim RegisterPort Data Registers General Purpose IO Gpio PortsP0 Data Register P0DATA0x00 R/W P2 Data Register P2DATA 0x02 R/W P1 Data Register P1DATA 0x01 R/WP3 Data Register P3DATA 0x03 R/W Gpio Port Configuration P0.1/CLKOUT Configuration P01CR 0x06 R/W P0.0/CLKIN Configuration P00CR 0x05 R/WP0.5/TIO0 P0.6/TIO1 Configuration P05CR-P06CR 0x0A-0x0B R/W P0.2/INT0-P0.4/INT2 Configuration P02CR-P04CR 0x07-0x09 R/W12. P1.2 Configuration P12CR 0x0F R/W P0.7 Configuration P07CR 0x0C R/W10. P1.0/D+ Configuration P10CR 0x0D R/W 11. P1.1/D- Configuration P11CR 0x0E R/W16. P2 Configuration P2CR 0x15 R/W 13. P1.3 Configuration P13CR 0x10 R/W14. P1.4-P1.6 Configuration P14CR-P16CR 0x11-0x13 R/W 15. P1.7 Configuration P17CR 0x14 R/WSPI Data Register Spidata 0x3C R/W 17. P3 Configuration P3CR 0x16 R/WSerial Peripheral Interface SPI SPI Data RegisterSPI Configure Register SPI Mode Timing vs. LSB First, Cpol and Cpha SPI Interface PinsSclk Ssel DAT a Registers Timer RegistersFree Running Timer Low order Byte Frtmrl 0x20 R/W Free Running Timer High-order Byte Frtmrh 0x21 R/WTimer Capture 1 Falling TIO1F 0x25 R/W Timer Capture 0 Rising TIO0R 0x22 R/WTimer Capture 1 Rising TIO1R 0x23 R/W Timer Capture 0 Falling TIO0F 0x24 R/W10. Programmable Interval Reload High Pirh 0x29 R/W Programmable Interval Timer High Pitmrh 0x27 RBit 74 Reserved Programmable Interval Reload Low Pirl 0x28 R/W11. Timer Configuration Tmrcr 0x2A R/W Timer CaptureBit 20 Reserved 13. Capture Interrupt Status Tcapints 0x2C R/W 12. Capture Interrupt Enable Tcapinte 0x2B R/WTimer Functional Sequence Diagram Bit Free Running Counter Loading Timing Diagram Architectural Description Interrupt ControllerPCH PC158 is cleared to zero Interrupt ProcessingInterrupt Trigger Conditions Interrupt LatencyInterrupt Clear 2 INTCLR2 0xDC R/W Interrupt RegistersInterrupt Clear 0 INTCLR0 0xDA R/W Interrupt Clear 1 INTCLR1 0xDB R/WInterrupt Mask 3 INTMSK3 0xDE R/W Bit 7 Enable Software Interrupt EnswintBit 60 Reserved Interrupt Mask 2 INTMSK2 0xDF R/W Interrupt Mask 1 INTMSK1 0xE1 R/W Interrupt Vector Clear Register Intvc 0xE2 R/W Interrupt Mask 0 INTMSK0 0xE0 R/WVreg Control Regulator OutputVreg Control Register Vregcr 0x73 R/W USB Serial Interface Engine SIE USB Transceiver ConfigurationUSB Transceiver Configure Register Usbxcr 0x74 R/W USB/PS2 TransceiverUSB Device Address Usbcr 0x40 R/W USB DeviceUSB Device Address Endpoint 0, 1, and 2 CountEndpoint 0 Mode EP0MODE 0x44 R/W Endpoint 0 ModeBit 30 Mode Endpoint 0 Data EP0DATA 0x50-0x57 R/W Endpoint 1 and 2 ModeEndpoint 1 and 2 Mode EP1MODE EP2MODE 0x45, 0x46 R/W Bit 7 StallEndpoint 2 Data EP2DATA 0x60-0x67 R/W USB Mode TablesMode Column Encoding ColumnSETUP, IN, and OUT Columns Details of Mode for Differing Traffic ConditionsCount Fifo Register Summary Addr Name DefaultTmrcr Intvc Voltage vs CPU Frequency Characteristics Voltage Vs CPU Frequency Characteristics3V Regulator DC CharacteristicsAbsolute Maximum Ratings DetectCpuclk AC CharacteristicsGeneral Purpose IO Interface Parameter Description Conditions Min Typical Max Unit ClockUSB Data Timing Non-USB Mode Driver CharacteristicsSPI Timing Clock Timing Gpio Timing DiagramDifferential Data Lines SCK CPOL=0 SCK CPOL=0 SCK CPOL=1 Package Handling Ordering InformationPin 300-Mil Molded DIP P1 Package DiagramsPin 300-Mil Molded DIP P3 Pin 300-Mil Soic S13 Pin QFN Package Document History Removed Gpio port 4 configuration details Added block diagrams and timing diagramsUpdated part numbers in the header Removed 638xx die diagram and die form pad assignmentCMCC/PYRS VGT/AESAWorldwide Sales and Design Support Products PSoC Solutions Sales, Solutions, and Legal InformationUSB

CY7C638xx, CY7C63310 specifications

The Cypress CY7C63310 and CY7C638xx series are advanced USB microcontrollers designed for various applications requiring reliable performance and flexibility. These chips are notable for their integration of several key technologies, enabling developers to create innovative electronic designs effortlessly.

The CY7C63310 is a part of the Cypress USB microcontroller family that boasts a fully integrated 8051-compatible microprocessor core. This architecture allows for efficient execution of high-level programming languages like C, enhancing code development efforts. The microcontroller supports USB 2.0 full-speed operation, allowing for high data transfer rates of up to 12 Mbps, essential for applications involving data communication.

One of the standout features of the CY7C63310 is its programmable GPIO (General-Purpose Input/Output) pins, which provide developers with the versatility to configure these pins as inputs, outputs, or alternate functions. This flexibility is particularly advantageous in applications where custom interfaces are essential, such as human-machine interfaces, sensor control, and USB peripherals.

Moreover, the CY7C638xx series presents an even broader array of features. These devices typically support various memory configurations, enabling designers to select from different on-chip RAM and flash memory options. This variety empowers projects requiring a mix of program and data storage capabilities, all while ensuring that performance remains optimal.

Both the CY7C63310 and CY7C638xx series leverage Cypress's EZ-USB technology, which simplifies the process of USB interface implementation. The EZ-USB architecture minimizes the effort associated with USB protocol complexity, allowing developers to focus on the core functionality of their applications.

These microcontrollers also incorporate features such as low-power operation, making them ideal for battery-operated devices. With various power management modes, designers can optimize energy consumption according to the specific needs of their applications.

In terms of connectivity, these chips support multiple interface standards, including SPI, I2C, and UART. These capabilities ensure that developers can easily interface with other components and systems, enhancing the overall utility of the microcontroller.

In summary, the Cypress CY7C63310 and CY7C638xx microcontrollers stand out for their robust features, including integrated USB functionality, flexible GPIO options, and support for various communication protocols. These attributes make them suitable for a wide range of applications, from consumer electronics to industrial automation, making them an excellent choice for developers seeking reliable and adaptable microcontroller solutions.