Product information query
Products News
首页 > Products > MCU Memory ADC Clock  > MCU > General Purpose MCU >CXMC33129 8-Bit RISC MCU Chip Details: Low-Power, Dual ADC, Temperature Sensor and PWM Application Guide
CXMC33129 8-Bit RISC MCU Chip Details: Low-Power, Dual ADC, Temperature Sensor and PWM Application Guide

The CXMC33129 is an 8-bit RISC-based microcontroller with a wide operating voltage range of 2.5V to 3.6V for battery-powered and low-power applications. The chip has built-in high-speed (4.9MHz) and low-speed (32kHz)RC oscillators, supporting a variety of operating modes, including normal mode, sleep mode, idle mode 0 and idle mode 1, which can significantly reduce system power consumption.
Its program memory is 8K × 16-bit OTP, data memory is 256 bytes SRAM, supports 61 instructions, all instructions can be completed in 1 or 2 cycles, high execution efficiency

CXMC33129 8-Bit RISC MCU Chip Details: Low-Power, Dual ADC, Temperature Sensor and PWM Application Guide
Manual
Ordering

Ordering

Product introduction

CXMC33129: A high-performance low-power 8-bit RISC microcontroller

In today's era of vigorous development of the Internet of Things and smart devices, microcontroller (MCU) as the core control unit, its performance, power consumption and integration have become the key factors for developers to select. CXMC33129 is an 8-bit RISC architecture microcontroller born in this context. With its low power consumption, high integration and rich peripheral resources, it is widely used in smart sensors, portable devices, industrial control and other fields.UQr嘉泰姆


1. Chip Overview and Core Features

1.1. Chip Overview

The CXMC33129 is an 8-bit RISC-based microcontroller with a wide operating voltage range of 2.5V to 3.6V for battery-powered and low-power applications. The chip has built-in high-speed (4.9MHz) and low-speed (32kHz)RC oscillators, supporting a variety of operating modes, including normal mode, sleep mode, idle mode 0 and idle mode 1, which can significantly reduce system power consumption.UQr嘉泰姆

The program memory is 8K × 16-bit OTP, the data memory is 256 bytes SRAM, and it supports 61 instructions. All instructions can be completed in 1 or 2 cycles, and the execution efficiency is high. In addition, the chip integrates a variety of peripheral modules, including:UQr嘉泰姆

1-Channel 8-Bit Successive Approximation ADCUQr嘉泰姆

2-channel 24-bit & Sigma;-& Delta; high-precision ADCUQr嘉泰姆

Built-in temperature sensorUQr嘉泰姆

2 8-bit PWM outputsUQr嘉泰姆

10/13 programmable I/O portsUQr嘉泰姆

5 interrupt sources, support multiple wake-up modesUQr嘉泰姆

1.2. The package provides SOP16 and SOP 1000.00g options to facilitate hardware design in different scenarios..UQr嘉泰姆

UQr嘉泰姆
UQr嘉泰姆


2. Core Architecture and Memory Organization

The CXMC33129 adopts the classic Harvard architecture, the program memory and data memory are separated, and the simultaneous access is supported, which improves the efficiency of instruction execution. The program memory address space is 8K × 16 bits, of which 0000H is the reset vector address, 0004H ~ 0018H is the interrupt vector area, and the user code can be stored from 0000H.UQr嘉泰姆

The data memory is divided into special function registers (SFR) and general purpose registers (GPR), and the address range is 000H ~ 1FFH. The SFR is used to control peripheral and system states, and the GPR is used for data storage and computing intermediate results. The indirect addressing register INDF0/INDF1 is used in conjunction with the pointer register INDP0/INDP1 to support flexible data access.UQr嘉泰姆

2.1. Core architectureUQr嘉泰姆

UQr嘉泰姆
2.2. Memory structure.UQr嘉泰姆
The microcontroller consists of two memory modules: program memory and data memory. Each module has its own totalUQr嘉泰姆
line, two memory modules can be accessed simultaneously in the same cycle.UQr嘉泰姆
     2.2.1 Program memoryUQr嘉泰姆
The program memory is used to store the user code, that is, the storage program. The microcontroller has a 13-bit wide program counter, the maximumUQr嘉泰姆
Addressable 8K x 16 program storage space. The microcontroller has 8K x 16 program memory.
UQr嘉泰姆

UQr嘉泰姆

Some addresses in program memory are reserved for special purposes such as resets and interrupts. 0000H is reserved for use as a microcontroller complex.UQr嘉泰姆
Bit after the program start address. When the chip is initialized or reset occurs, the program will jump to this address and begin execution.UQr嘉泰姆
0004H ~ 0018H are interrupt vectors used to execute interrupt service routines. 1 DFFFH ~ 1FFFH is the encryption area is not available.UQr嘉泰姆
     2.2.2 Data storageUQr嘉泰姆
   2.2.2.1) Data memory structure.UQr嘉泰姆
The data memory consists of special function registers (SFRs) and general purpose registers (GPRs). operation of the SFR control device,UQr嘉泰姆
These registers have specific addresses and are closely related to the correct operation of the microcontroller. Most special function registers are available in the program.UQr嘉泰姆
Read and write directly under sequential control, while some are protected from users. GPR is data storage and rewritingUQr嘉泰姆
All addresses can be read and written under program control.UQr嘉泰姆
The starting address of the data memory of the microcontroller is "000H", and the address range is 000H ~ 1FFH.UQr嘉泰姆
UQr嘉泰姆
            2.2.2.2) Special Function Register DescriptionUQr嘉泰姆
Most of the special function registers are described in detail in the related functions, but several registers are described separately in this section.UQr嘉泰姆
indirect addressing register-INDF0,INDF1UQr嘉泰姆
The addresses of the indirect addressing registers INDF0 and INDF1 are located in the data storage area, but they do not have actual physical addresses.UQr嘉泰姆
Indirect addressing is the use of indirect addressing registers and indirect addressing pointers to operate on data instead of defining actual memory.UQr嘉泰姆
Direct memory addressing method for memory addresses. Any action on the indirect addressed registers (INDF0 and INDF1),UQr嘉泰姆
Corresponding read/write operations are generated for the memory addresses specified by the indirect addressing pointers (INDP0 and INDP1). They alwaysUQr嘉泰姆
In pairs, INDF0 and INDP0 can access Bank 0, while INDF1 and INDP1 can access all BankUQr嘉泰姆
(This microcontroller only Bank0).UQr嘉泰姆
Indirect Addressing Pointer-INDP0,INDP1UQr嘉泰姆
This series of microcontrollers provides two indirect addressing pointers, INDP0 and INDP1. Since these pointers are in the data memory.UQr嘉泰姆
It can be operated like an ordinary register, thus providing an efficient method of addressing and data tracing. When looking for indirectUQr嘉泰姆
When the address register performs any operation, the actual address pointed to by the microcontroller is the address specified by the indirect addressing pointer.UQr嘉泰姆
INDP0 and INDF0 are used to access Bank 0, while INDP1 and INDF1 can access allUQr嘉泰姆
Bank. Indirect addressing only accesses general registers, I .e., the most significant bit of a 9-bit address defaults to high.UQr嘉泰姆
Status Register-STATUSUQr嘉泰姆
The 8-bit register includes zero flag bit (Z), carry flag bit (C), auxiliary carry flag bit (AC), overflow flag bit (OV),UQr嘉泰姆
Pause flag bit (PDF), and watchdog overflow flag bit (TO). These flag bits simultaneously record the state data and calculation of the microcontroller.UQr嘉泰姆
surgery/logic operations.UQr嘉泰姆
C: When the result of the addition operation produces a carry, or the result of the subtraction operation does not produce a borrow, then C is set, otherwiseUQr嘉泰姆
C is cleared, and C is also affected by the shift instruction with carry.UQr嘉泰姆
AC: When the result of the low nibble addition operation produces a carry, or the result of the low nibble subtraction operation does not produce a borrow,UQr嘉泰姆
AC is set, otherwise AC is cleared.UQr嘉泰姆
Z: Z is set when the result of the arithmetic or logical operation is zero, otherwise Z is cleared.UQr嘉泰姆
OV: OV is set when the carry state XOR result of the upper two bits of the operation result is 1, otherwise OV is cleared.UQr嘉泰姆
PDF: System power-up or execution of the "CLRWDT" command will clear the PDF, while execution of the "STOP" command will set the PDF.UQr嘉泰姆
TO: TO will be cleared when the system is powered on or "CLRWDT" or "STOP" instructions are executed, and will be set when WDT overflows.UQr嘉泰姆
That.UQr嘉泰姆
In addition, the status register will not be automatically pushed into the stack when entering an interrupt program or executing a subroutine call.UQr嘉泰姆
Save. If the contents of the status register are important and the interrupt subroutine changes the contents of the status register, you need to saveUQr嘉泰姆
Back up for recovery.UQr嘉泰姆
UQr嘉泰姆
Bit 7~6 is not used, read as "0"UQr嘉泰姆
Bit 5 TO: Watchdog Overflow Flag BitUQr嘉泰姆
0: System power up or execute "CLRWDT" or "STOP" commandUQr嘉泰姆
1:WDT overflowUQr嘉泰姆
Bit 4 PDF: Pause Flag BitUQr嘉泰姆
0: System power up or execute "CLRWDT" commandUQr嘉泰姆
1: Executing the "STOP" instruction will set the PDF bit.UQr嘉泰姆
Bit 3 OV: overflow flag bitUQr嘉泰姆
0: when no overflow occursUQr嘉泰姆
1: When the XOR result of the carry state of the upper two digits of the operation result is 1UQr嘉泰姆
Bit 2 Z: zero flag bitUQr嘉泰姆
0: The result of an arithmetic or logical operation is not zeroUQr嘉泰姆
1: The result of an arithmetic or logical operation is zeroUQr嘉泰姆
Bit 1 AC: auxiliary carry flag bitUQr嘉泰姆
0: when there is no auxiliary carryUQr嘉泰姆
1: When the addition of the low byte causes a carry or subtraction does not cause a borrowUQr嘉泰姆
Bit 0 C: carry flag bit (opposite polarity when borrowing)UQr嘉泰姆
0: when there is no carryUQr嘉泰姆
1: When addition causes carry or subtraction does not cause borrowing, the shift instruction will also affect the C flag bit C.UQr嘉泰姆
It is also affected by the cyclic shift instruction.
UQr嘉泰姆


3. System Clock and Power Management

CXMC33129 built-in two RC oscillators: high-speed HIRC(4.9MHz) and low-speed LIRC(32kHz). Users can select the system clock source and its frequency division ratio through the SMOD register, and support four frequencies of fH, fH/2, fH/4, and fH/8, taking into account performance and power consumption.UQr嘉泰姆

The chip supports four modes of operation:UQr嘉泰姆

Normal mode: All modules run with the highest power consumption and the strongest performance.UQr嘉泰姆

Sleep mode: The CPU and system clock are turned off, only the low-speed oscillator and WDT run, with the lowest power consumption.UQr嘉泰姆

Idle Mode 0The CPU stops, the system clock is turned off, and some peripherals (such as Timer0) can still run.UQr嘉泰姆

Idle Mode 1The CPU stops, the system clock continues to run, and peripheral functions are maintained.UQr嘉泰姆

Through the STOP instruction combined with the IDLEC and FSYSEN bits in the SMOD register, the working mode can be flexibly switched to achieve fine control of power consumption.UQr嘉泰姆
3.1. Oscillator
UQr嘉泰姆
    The microcontroller has two internal fully integrated oscillator, high-speed oscillator for the internal 4.9MHzRC oscillator, low-speed oscillationUQr嘉泰姆
The oscillator is an internal 32kHz RC oscillator.UQr嘉泰姆
UQr嘉泰姆
Internal high-speed RC oscillator-HIRCUQr嘉泰姆
The internal high-speed RC oscillator is a fully integrated system oscillator that requires no other external devices. Chips are made at the time of manufactureUQr嘉泰姆
Adjusted and internal frequency compensation circuit, so that the oscillation frequency due to VDD, temperature and chip manufacturing process of different effects.UQr嘉泰姆
MinimizeUQr嘉泰姆
Internal low speed RC oscillator-LIRCUQr嘉泰姆
The internal 32kHz system oscillator is a low speed oscillator. LIRC is a fully integrated RC oscillator, no external devices,UQr嘉泰姆
At room temperature of 3.3V, the oscillation frequency value is 32kHz. The chip is adjusted during manufacture and contains frequency compensation electricity internally.UQr嘉泰姆
The oscillation frequency is minimized due to VDD, temperature, and different chip fabrication processes. Power on the system,UQr嘉泰姆
The LIRC oscillator is enabled, and there is no register bit to divide the oscillator.UQr嘉泰姆
System Clock ConfigurationUQr嘉泰姆
UQr嘉泰姆
3.3. Related special function registers.
UQr嘉泰姆

The SMOD register is used to control the internal clock of the microcontroller.UQr嘉泰姆

UQr嘉泰姆

Bit 7~4 is not used, read as "0"UQr嘉泰姆
Bit 3~2 CP1 ~ CP0: System clock select bit, used to select the system clock source.UQr嘉泰姆
00:fHUQr嘉泰姆
01:fH/2UQr嘉泰姆
10:fH/4UQr嘉泰姆
11:fH/8UQr嘉泰姆
Bit 1 IDLEC: Idle Mode Control BitUQr嘉泰姆
0: Remove energy (enter sleep mode after STOP instruction is executed)UQr嘉泰姆
1: enableUQr嘉泰姆
This bit is an idle mode control bit that determines the action that occurs after the STOP instruction is executed. If this bit is high, when the commandUQr嘉泰姆
After STOP is executed, the microcontroller enters idle mode. Whether to enter idle mode 0 or idle mode 1 depends onUQr嘉泰姆
FSYSEN bit, if the FSYSEN bit is high, the CPU stops running in idle mode 1, the system clock will continue to workUQr嘉泰姆
to keep peripheral functions working; if FSYSEN is low, both CPU and system clocks will stop in idle mode 0UQr嘉泰姆
Run. If this bit is low, the microcontroller will enter sleep mode after the STOP instruction is executed.UQr嘉泰姆
Bit 0 FSYSEN: fSYS control bit in IDLE modeUQr嘉泰姆
0: divide energyUQr嘉泰姆
1: enable
UQr嘉泰姆

 3.4. System working modeUQr嘉泰姆

This series of single-chip microcomputer has four different working modes, each has its own characteristics, according to the application of different performance andUQr嘉泰姆
Different operating modes can be selected for power consumption requirements. SCM normal work has normal mode. The remaining 3 working modes: HughUQr嘉泰姆
Sleep Mode, Idle Mode 0 and Idle Mode 1 are used to save power when the MCU CPU is turned off.
UQr嘉泰姆

UQr嘉泰姆
Normal modeUQr嘉泰姆
As the name implies, this is the main mode of operation, all the functions of the microcontroller can be implemented in this mode and the system clock is controlledUQr嘉泰姆
A high speed oscillator is provided. In this mode, the clock source for the normal operation of the microcontroller comes from the HIRC oscillator. High Speed Oscillator FrequencyUQr嘉泰姆
The rates can be divided into unequal ratios of 1 to 8, the actual ratio being selected by CP1 to CP0 in the SMOD register. single chip microcomputerUQr嘉泰姆
Using high-speed oscillator frequency division as the system clock can reduce the operating current.UQr嘉泰姆
Sleep modeUQr嘉泰姆
After the STOP instruction is executed and the IDLEC bit in the SMOD register is low, the system enters sleep mode. In the dormant modeUQr嘉泰姆
where the CPU stops running. Watchdog timer function enabled, fLContinue to run.UQr嘉泰姆
Idle Mode 0UQr嘉泰姆
When the STOP instruction is executed and the IDLEC bit in the SMOD register is high and the FSYSEN bit in the SMOD register is low,UQr嘉泰姆
The system enters idle mode 0. In idle mode 0, the system clock stops and the CPU stops working, but some peripheral functionsUQr嘉泰姆
Such as watchdog timer and timer/counter will continue to work.UQr嘉泰姆
Idle Mode 1UQr嘉泰姆
After the STOP instruction is executed and the IDLEC bit in the SMOD register is high and the FSYSEN bit in the SMOD register is high,UQr嘉泰姆
The system goes into idle mode 1. In idle mode 1, the CPU stops, but provides a clock source to some peripheral functionsUQr嘉泰姆
Such as watchdog timer and timer/counter. In idle mode 1, the system clock continues to run.UQr嘉泰姆
The power-saving working mode of the MCU core is mainly realized by turning off the clock of the relevant part;UQr嘉泰姆
UQr嘉泰姆
PWM, 8bit ADC clock is the system clockUQr嘉泰姆
After the system enters sleep or idle mode, you can wake up in the following ways:UQr嘉泰姆
● System interruptionUQr嘉泰姆
● WDT overflowUQr嘉泰姆
Watchdog timer reset occurs if awakened by WDT overflow. This wake-up method will reset the system and canUQr嘉泰姆
Its wake-up source is determined by the TO and PDF bits in the status register. The system is powered up or the command to clear the watchdog is executed,UQr嘉泰姆
The PDF is cleared; the STOP instruction is executed and the PDF is set. Watchdog counter overflow will set the TO flag and callUQr嘉泰姆
This reset resets the program counter and stack pointer, while the other flags remain in their original state.UQr嘉泰姆
If the system is awakened by an interrupt, there are two possibilities. The first case is: the relevant interrupt can be removed or the interrupt makes.UQr嘉泰姆
Yes and the stack is full, the program continues after the "STOP" instruction. In this case, the interrupt that wakes up the system willUQr嘉泰姆
Wait until the relevant interrupt is enabled or the stack layer is available before execution. The second case is: the relevant interrupt is enabled and the stackUQr嘉泰姆
is not full, the interrupt can be executed immediately. If the interrupt flag bit has been setUQr嘉泰姆
"1", the wake-up function of the relevant interrupt will be invalid.

4. peripheral resources

1. Timer counter Timer0 and Timer1

Timer0 is an 8-bit programmable timer that supports the system clock or low-speed clock as the source, the pre-frequency ratio is adjustable, and the interrupt can be triggered when it overflows. Timer1 is a fixed cycle counter, dedicated to generating time-based interrupts, suitable for application scenarios that require periodic wake-up.UQr嘉泰姆

2. PWM module

The chip provides two 8-bit PWM outputs. The duty cycle can be set through PWM0 and PWM1 registers. PWMCT registers control output enable and polarity reversal. It is suitable for motor control, LED dimming and other applications.UQr嘉泰姆

3. ADC Module

8-bit SAR ADC: The conversion period is 32 machine cycles, suitable for general precision analog signal acquisition.UQr嘉泰姆

24位Σ-Δ ADC: Support differential input, adjustable gain (2 or 128 times), optional output rate (10/20/40/80Hz), suitable for high-precision measurement such as weighing, temperature, pressure, etc.UQr嘉泰姆

4. Temperature sensor

The internal temperature sensor data can be read through channel 2 of the 24-bit ADC. The output value is linearly related to the temperature. The typical value is the output 224700 at 25 ℃ (after shifting 2 bits to the right). The output increases by 740 for each 1 ℃ increase, which is suitable for ambient temperature monitoring.UQr嘉泰姆

5. Interrupt the system

The chip supports 5 interrupt sources, in descending order of priority: external interrupt, Timer0 interrupt, Timer1 interrupt, 24-bit ADC interrupt, 8-bit ADC interrupt. Each interrupt has an independent enable bit and flag bit, supporting edge trigger and wake-up functions.UQr嘉泰姆


5. Instruction Set and Programming Model

The CXMC33129 provides 61 instructions, covering arithmetic operations, logical operations, data transfer, bit operations, jumps, and other functions. All instructions can be completed in 1 or 2 cycles, support direct, indirect and immediate addressing mode, programming flexible and efficient.UQr嘉泰姆

Particularly worth mentioning is its BCD adjustment instruction (BTD), which can be used for decimal operations, suitable for digital tube display, metering equipment and other scenarios.UQr嘉泰姆

5.1. Instruction description conventionUQr嘉泰姆
m data register addressUQr嘉泰姆
R m corresponds to data memoryUQr嘉泰姆
ACC accumulator (working register)UQr嘉泰姆
B The bit address in the eight-bit data register.UQr嘉泰姆
K immediately.UQr嘉泰姆
5.2. List of Directives
UQr嘉泰姆
UQr嘉泰姆
5.3. Directive definition conventionsUQr嘉泰姆
k: Immediate numberUQr嘉泰姆
m: data memory addressUQr嘉泰姆
ACC: AccumulatorUQr嘉泰姆
B: bit 0~7UQr嘉泰姆
1. arithmetic operationUQr嘉泰姆
1、ADDAM m,1UQr嘉泰姆
The instruction description adds the specified data memory and accumulator content, and the result is stored in the accumulator.UQr嘉泰姆
Function representation ACC & larr; m ACC
UQr嘉泰姆
Impact flags OV, Z, AC, CUQr嘉泰姆
2、ADDAM m,0 UQr嘉泰姆
The instruction description adds the contents of the specified data memory and accumulator, and the result is stored in the specified data memory.UQr嘉泰姆
Function Representation m & larr; m ACCUQr嘉泰姆
Impact flags OV, Z, AC, CUQr嘉泰姆
3、ADDAL kUQr嘉泰姆
The instruction description adds the accumulator to the immediate number and stores the result in the accumulator.UQr嘉泰姆
Function Representation ACC & larr; k ACCUQr嘉泰姆
Impact flags OV, Z, AC, CUQr嘉泰姆
4、ADDAMC m,1UQr嘉泰姆
The instruction description adds the specified data memory, the contents of the accumulator, and the carry flag, and the result is stored in the accumulator.UQr嘉泰姆
Function representation ACC & larr; m ACC CUQr嘉泰姆
Impact flags OV, Z, AC, CUQr嘉泰姆
5、ADDAMC m,0UQr嘉泰姆
The instruction description adds the specified data memory, accumulator content, and the forward flag bit, and the result is stored in the specified data.UQr嘉泰姆
Memory.UQr嘉泰姆
Function Representation m & larr; m ACC CUQr嘉泰姆
Impact flags OV, Z, AC, CUQr嘉泰姆
6、SUBAL k UQr嘉泰姆
The instruction description subtractions the contents of the immediate number de-accumulator and stores the result in the accumulator. If the result is negative, the C flag is clearedUQr嘉泰姆
is 0, otherwise the result is positive or 0, and the C flag bit is set to 1.UQr嘉泰姆
Function Representation ACC & larr; k-ACCUQr嘉泰姆
Impact flags OV, Z, AC, CUQr嘉泰姆
7、SUBAM m,1UQr嘉泰姆
The instruction description subtracts the contents of the accumulator from the data in the specified data memory and stores the result in the accumulator. If the result isUQr嘉泰姆
Negative, the C flag bit is cleared to 0, otherwise the result is positive or 0, and the C flag bit is set to 1.UQr嘉泰姆
Function Representation ACC & larr; m-ACCUQr嘉泰姆
Impact flags OV, Z, AC, CUQr嘉泰姆
8、SUBAM m,0 UQr嘉泰姆
The instruction description subtracts the contents of the accumulator from the data in the specified data memory and stores the result in the specified data memory. SuchUQr嘉泰姆
If the result is negative, the C flag bit is cleared to 0, otherwise the result is positive or 0, and the C flag bit is set to 1.UQr嘉泰姆
Function Representation m & larr; m-ACCUQr嘉泰姆
Impact flags OV, Z, AC, CUQr嘉泰姆
9、SUBAMC m,1 UQr嘉泰姆
The instruction description subtracts the contents of the accumulator from the specified data memory minus the reverse of the carry flag, and the result is stored in the tired.UQr嘉泰姆
The additive. If the result is negative, the C flag bit is cleared to 0, otherwise the result is positive or 0, and the C flag bit is set to 1.UQr嘉泰姆
Function Representation ACC & larr; m-ACC- (!C)UQr嘉泰姆
10、SUBAMC m,0UQr嘉泰姆
The instruction description subtracts the contents of the accumulator from the specified data memory minus the reverse of the carry flag, and the result is stored in the number.UQr嘉泰姆
According to the memory. If the result is negative, the C flag bit is cleared to 0, otherwise the result is positive or 0, and the C flag bit is set to 1.UQr嘉泰姆
functional representation m & larr; m-ACC- (!C)UQr嘉泰姆
Impact flags OV, Z, AC, CUQr嘉泰姆
11、BTD m UQr嘉泰姆
The instruction description is generally used together with addition, and the function is to directly treat the addend and the addend in the last addition as decimalUQr嘉泰姆
The system is operated on and the decimal sum is stored in m. If the value of the lower four bits is greater than "9" or AC = 1, then the BCD toneUQr嘉泰姆
The integer is executed to add "6" to the original value, otherwise the original value remains unchanged; If the value of the top four bits is greater than "9" or C = 1, thenUQr嘉泰姆
The BCD adjustment is performed by adding "6" to the original value ". The BCD conversion is essentially performed based on the accumulator and flag bits.UQr嘉泰姆
The addition operation of 00H,06H,60H or 66H is stored in the data memory. Only carry flag bit C is affected,UQr嘉泰姆
Used to indicate whether the sum of the original BCDs is greater than 100, and can be added to double-precision decimal numbers.UQr嘉泰姆
Function indicates m & larr; ACC 00H orUQr嘉泰姆
m ← ACC 06H 或UQr嘉泰姆
m ← ACC 60H 或UQr嘉泰姆
M ← ACC 66HUQr嘉泰姆
Impact flag CUQr嘉泰姆
For example, in the last addition,UQr嘉泰姆
29H 35H=5EHUQr嘉泰姆
directly seenUQr嘉泰姆
29D 35D=64D → mUQr嘉泰姆
2. logic operationUQr嘉泰姆
1、ANDAM m,1UQr嘉泰姆
The instruction description will specify the contents of the data memory and the data in the accumulator to do a logical and, the results are stored in the accumulator.UQr嘉泰姆
Function indicates ACC & larr; m "AND" ACCUQr嘉泰姆
Impact flag ZUQr嘉泰姆
2、ANDAM m,0UQr嘉泰姆
The instruction description will specify the contents of the data memory and the data in the accumulator to do a logical and, the results are stored in the data memory.UQr嘉泰姆
Functional representation m & larr; m "AND" ACCUQr嘉泰姆
Impact flag ZUQr嘉泰姆
3、ANDAL kUQr嘉泰姆
Instruction Description The data in the accumulator and the immediate number are logically and the results are stored in the accumulator.UQr嘉泰姆
Function Representation ACC & larr; k "AND" ACCUQr嘉泰姆
Impact flag ZUQr嘉泰姆
4、ORAM m,1UQr嘉泰姆
The instruction description stores the data in the specified data memory and the accumulator logic or, and the result is stored in the accumulator.UQr嘉泰姆
Function means ACC & larr; m "OR" ACCUQr嘉泰姆
Impact flag ZUQr嘉泰姆
5、ORAM m,0 UQr嘉泰姆
The instruction description places the data in the specified data memory and the accumulator logic or, and the result is placed in the data memory.UQr嘉泰姆
Function Representation m & larr; m "OR" ACCUQr嘉泰姆
Impact flag ZUQr嘉泰姆
6、ORAL kUQr嘉泰姆
The instruction description stores the data in the accumulator and the immediate logical or, and the result is stored in the accumulator.UQr嘉泰姆
Function Representation ACC & larr; k "OR" ACCUQr嘉泰姆
Impact flag ZUQr嘉泰姆
7、XORAM m,1 UQr嘉泰姆
The instruction description stores the specified data memory content and the data logic of the accumulator, and the result is stored in the accumulator.UQr嘉泰姆
Functional representation ACC & larr; m "XOR" ACCUQr嘉泰姆
Impact flag ZUQr嘉泰姆
8、XORAM m,0UQr嘉泰姆
The instruction description will specify the contents of the data memory and the data logic of the accumulator, and the result will be placed in the data memory.UQr嘉泰姆
Functional representation m & larr; m "XOR" ACCUQr嘉泰姆
Impact flag ZUQr嘉泰姆
9、XORAL k UQr嘉泰姆
The instruction description stores the data of the accumulator with the immediate logical difference or, and the result is stored in the accumulator.UQr嘉泰姆
Function Representation ACC & larr; k "XOR" ACCUQr嘉泰姆
Impact flag ZUQr嘉泰姆
10、CPL m,0 UQr嘉泰姆
The instruction description will specify that each bit in the data memory is logically inverted, equivalent to changing from 1 to 0 or 0 to 1.UQr嘉泰姆
Function representation m & larr; ~ mUQr嘉泰姆
Impact flag ZUQr嘉泰姆
11、CPL m,1 UQr嘉泰姆
The instruction description will specify that each bit in the data memory is logically inverted, equivalent to changing from 1 to 0 or 0 to 1, and the result is stored.UQr嘉泰姆
The accumulator is stored back and the contents of the data memory remain unchanged.UQr嘉泰姆
Functional representation ACC & larr; ~ mUQr嘉泰姆
Impact flag ZUQr嘉泰姆
3. Increment and DecreaseUQr嘉泰姆
1、INC m,0UQr嘉泰姆
指令说明 将指定数据存储器的内容加1。UQr嘉泰姆
Function representation m & larr; m 1UQr嘉泰姆
Impact flag ZUQr嘉泰姆
2、INC m,1 UQr嘉泰姆
The instruction description adds 1 to the contents of the specified data memory, stores the result back to the accumulator and maintains the contents of the specified data memory.UQr嘉泰姆
No change.UQr嘉泰姆
Function representation ACC & larr; m 1UQr嘉泰姆
Impact flag ZUQr嘉泰姆
3、DEC m,0 UQr嘉泰姆
The instruction description subtracts 1 from the specified data memory contents.UQr嘉泰姆
Function representation m & larr; m - 1UQr嘉泰姆
Impact flag ZUQr嘉泰姆
4、DEC m,1 UQr嘉泰姆
The instruction description reduces the contents of the specified data memory by 1, stores the result back to the accumulator and keeps the specified data memory.UQr嘉泰姆
No change.UQr嘉泰姆
Function Representation ACC & larr; m - 1UQr嘉泰姆
Impact flag ZUQr嘉泰姆
4. shiftUQr嘉泰姆
1、RR m,0 UQr嘉泰姆
The instruction description circularly shifts the contents of the specified data memory by 1 bit to the right and bit 0 to bit 7.UQr嘉泰姆
Function representation m. B & larr; m.(B 1) (B = 0~6)UQr嘉泰姆
m.7 ← m.0UQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
2、RR m,1UQr嘉泰姆
The instruction description shifts the contents of the specified data memory to the right by 1 bit, the 0th to the 7th bit, and stores the shift result to the tiredUQr嘉泰姆
The contents of the specified data store remain unchanged.UQr嘉泰姆
Function representation ACC. B & larr; m.(B 1) (B = 0~6)UQr嘉泰姆
ACC.7 ← m.0UQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
3、RRC m,0UQr嘉泰姆
The instruction description shifts the contents of the specified data memory together with the carry flag to the right by 1 bit, and the 0th bit replaces the carry flag and the original.UQr嘉泰姆
The carry flag is moved to the 7th position.UQr嘉泰姆
Function representation m. B & larr; m.(B 1) (B = 0~6)UQr嘉泰姆
m.7 ← CUQr嘉泰姆
C ← m.0UQr嘉泰姆
Impact flag CUQr嘉泰姆
4、RRC m,1UQr嘉泰姆
The instruction description shifts the contents of the specified data memory together with the carry flag to the right by 1 bit, and the 0th bit replaces the carry flag and the original.UQr嘉泰姆
The carry flag is moved to the 7th bit, and the shift result is sent back to the accumulator, but the contents of the specified data register remain unchanged.UQr嘉泰姆
Function representation ACC. B & larr; m.(B 1) (B = 0~6)UQr嘉泰姆
ACC.7 ← CUQr嘉泰姆
C ← m.0UQr嘉泰姆
Impact flag CUQr嘉泰姆
5 、 RL m,0UQr嘉泰姆
The instruction specification shifts the contents of the specified data memory left by 1 bit, and the 7th to the 0th bit.UQr嘉泰姆
Function representation m.(B 1) & larr; m. B (B = 0~6)UQr嘉泰姆
m.0 ← m.7UQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
6 、 RL m,1UQr嘉泰姆
The instruction description shifts the contents of the specified data memory left by 1 bit, and the 7th bit is shifted to the 0th bit, and the result is sent to the accumulator, and.UQr嘉泰姆
The contents of the specified data holder remain unchanged.UQr嘉泰姆
Function representation ACC.(B 1) & larr; m. B (B = 0~6)UQr嘉泰姆
ACC.0 ← m.7UQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
7、RLC m,0UQr嘉泰姆
The instruction description shifts the contents of the specified data memory, together with the carry flag, to the left by 1 bit, with the 7th bit replacing the carry flag and the originalUQr嘉泰姆
The carry flag is moved to the 0th bit.UQr嘉泰姆
Function representation m.(B 1) & larr; m. B (B = 0~6)UQr嘉泰姆
m.0 ← CUQr嘉泰姆
C ← m.7UQr嘉泰姆
Impact flag CUQr嘉泰姆
8、RLC m,1UQr嘉泰姆
The instruction description shifts the contents of the specified data memory, together with the carry flag, to the left by 1 bit, with the 7th bit replacing the carry flag and the originalUQr嘉泰姆
The carry flag is moved to bit 0, and the shift result is sent back to the accumulator, but the contents of the specified data register remain unchanged.UQr嘉泰姆
Function representation ACC.(B 1) & larr; m. B (B = 0~6)UQr嘉泰姆
ACC.0 ← CUQr嘉泰姆
C ← m.7UQr嘉泰姆
Impact flag CUQr嘉泰姆
5. data transferUQr嘉泰姆
1 、 MOVMA mUQr嘉泰姆
The instruction description copies the contents of the specified data memory to the accumulator.UQr嘉泰姆
Function Representation ACC & larr; mUQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
2UQr嘉泰姆
The instruction description loads an 8-bit immediate into the accumulator.UQr嘉泰姆
Function Representation ACC & larr; kUQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
3 its MOVAM mUQr嘉泰姆
The instruction description copies the contents of the accumulator to the specified data memory.UQr嘉泰姆
Function Representation m & larr; ACCUQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
6. bit operationUQr嘉泰姆
1、CLRB m,b UQr嘉泰姆
The instruction description cleats the B- bit contents of the specified data memory.UQr嘉泰姆
Function representation m, B & larr; 0UQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
2、SETB m,bUQr嘉泰姆
The instruction description will specify that the B- th position of the data memory is 1.UQr嘉泰姆
Function representation m, B & larr; 1UQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
7. conditional transferUQr嘉泰姆
1 、 SZ m,0UQr嘉泰姆
The instruction description determines whether the content of the specified data memory is 0, and if it is 0, the program skips the next instruction execution. ByUQr嘉泰姆
An empty instruction cycle is required to be inserted when the next instruction is obtained, so this instruction is a 2-cycle instruction. If the knotUQr嘉泰姆
If it is not 0, the program continues to the next instruction.UQr嘉泰姆
function means that if m = 0, skip the next instruction executionUQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
2 、 SZ m,1UQr嘉泰姆
The instruction description copies the contents of the specified data memory to the accumulator and determines whether the contents of the specified data memory are 0,UQr嘉泰姆
If 0 skips the next instruction. This refers to the fact that an empty instruction cycle is required to be inserted when the next instruction is fetched.UQr嘉泰姆
command for 2 cycles. If the result is not 0, the program continues with the next instruction.UQr嘉泰姆
Function means ACC & larr; m, if m = 0, skip the next instruction executionUQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
3 、 SZB m,bUQr嘉泰姆
The instruction description determines whether the B- th bit of the specified data memory is 0, and if it is 0, skips the next instruction. Due to acquisitionUQr嘉泰姆
The next instruction will require an empty instruction cycle to be inserted, so this instruction is a 2-cycle instruction. If the result is notUQr嘉泰姆
0, the program continues with the next instruction.UQr嘉泰姆
Function means that if m, B = 0, skip the next instruction executionUQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
4 、 FZBN m,bUQr嘉泰姆
The instruction description determines the I-th bit of the specified data memory, and if it is not 0, the program skips the next instruction execution. Due to takeUQr嘉泰姆
The next instruction will require the insertion of an empty instruction cycle, so this instruction is a 2-cycle instruction. If the result isUQr嘉泰姆
0, the program continues with the next instruction.UQr嘉泰姆
Function means that if m. I & ne;0, skip the next instruction executionUQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
The instruction description determines whether the B- th bit of the specified data memory is 0, and if it is 0, skips the next instruction. Due to acquisitionUQr嘉泰姆
The next instruction will require an empty instruction cycle to be inserted, so this instruction is a 2-cycle instruction. If the result is notUQr嘉泰姆
0, the program continues with the next instruction.UQr嘉泰姆
Function means that if m, B = 0, skip the next instruction executionUQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
5 、 CHINC m,0UQr嘉泰姆
The instruction description adds 1 to the contents of the specified data memory, determines whether it is 0, and skips the next instruction if it is 0. ByUQr嘉泰姆
An empty instruction cycle is required to be inserted when the next instruction is obtained, so this instruction is a 2-cycle instruction. If the knotUQr嘉泰姆
If it is not 0, the program continues to the next instruction.UQr嘉泰姆
The function represents m & larr; m 1, if m = 0 skips the next instruction executionUQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
6 、 SZDEC m,0UQr嘉泰姆
The instruction description subtracts the contents of the specified data memory by 1, determines whether it is 0, and skips the next instruction if it is 0,UQr嘉泰姆
An empty instruction cycle is required to be inserted when the next instruction is obtained, so this instruction is a 2-cycle instruction. If the knotUQr嘉泰姆
If it is not 0, the program continues to the next instruction.UQr嘉泰姆
function indicates m & larr; m -1, if m = 0 skips the next instruction executionUQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
7 、 CHINC m,1UQr嘉泰姆
The instruction description adds 1 to the contents of the specified data memory, determines whether it is 0, and skips the next instruction if it is 0.UQr嘉泰姆
The result is stored in the accumulator, but the contents of the specified data store remain unchanged. Because the next instruction will be required.UQr嘉泰姆
Insert an empty instruction cycle, so this instruction is a 2-cycle instruction. If the result is not 0, the program continuesUQr嘉泰姆
the next instruction.UQr嘉泰姆
Function indicates ACC & larr; m 1, if ACC = 0 skips the next instruction executionUQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
8 、 SZDEC m,1UQr嘉泰姆
The instruction description subtracts the contents of the specified data memory by 1, determines whether it is 0, and skips the next instruction if it is 0.UQr嘉泰姆
The results will be stored in the accumulator, but the contents of the specified data memory will remain unchanged. Since the next instruction will be required to insert aUQr嘉泰姆
Empty instruction cycle, so this instruction is a 2-cycle instruction. If the result is not 0, the program continues to the next finger.UQr嘉泰姆
Order.UQr嘉泰姆
function indicates ACC & larr; m-1, if ACC = 0 skips next instruction executionUQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
8. unconditional transferUQr嘉泰姆
1 interconnect (TV-12p)UQr嘉泰姆
Instruction Description The contents of the program counter are unconditionally replaced by the specified address, and the program continues to execute at the new address. WhenUQr嘉泰姆
When the new address is loaded, an empty instruction cycle must be inserted, so this instruction is a 2-cycle instruction.UQr嘉泰姆
Function Representation Program Counter & larr; kUQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
2 GATO kUQr嘉泰姆
The instruction description unconditionally calls the subroutine at the specified address, at which point the program counter is first increased by 1 to obtain the next to be executed.UQr嘉泰姆
The instruction address is pushed onto the stack, then the specified address is loaded and the program continues from the new address, as this instruction requires an amountUQr嘉泰姆
external operation, so it is a 2-cycle instruction.UQr嘉泰姆
功能表示Stack ← Program Counter 1UQr嘉泰姆
Program Counter ← kUQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
3、RET UQr嘉泰姆
The instruction description restores the program counter value in the stack register, and the program continues execution from the retrieved address.UQr嘉泰姆
功能表示Program Counter ← StackUQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
4、RETL kUQr嘉泰姆
The instruction description restores the program counter value in the stack register and the accumulator loads the specified immediate number, which is retrieved byUQr嘉泰姆
address to continue execution.UQr嘉泰姆
功能表示Program Counter ← StackUQr嘉泰姆
ACC ← kUQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
5、RETIN UQr嘉泰姆
The instruction shows that the program counter value in the stack register is restored and the interrupt function is re-enabled by setting the GIE bit. GIEUQr嘉泰姆
is the main control bit that controls interrupt enable. If there is an interrupt that has not been corresponding before the RETIN instruction is executed, this interruptUQr嘉泰姆
will be corresponding before returning to the main program.UQr嘉泰姆
功能表示Program Counter ← StackUQr嘉泰姆
EMI ← 1UQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
9. other instructionsUQr嘉泰姆
1、NOPUQr嘉泰姆
The instruction describes a null operation, followed by sequential execution of the next instruction.UQr嘉泰姆
Functional Representation PC & larr; PC 1UQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
2、CLR A UQr嘉泰姆
The instruction description clears the contents of the work register ACC.UQr嘉泰姆
Function Representation m & larr; 00HUQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
3、CLR m UQr嘉泰姆
The instruction description zeroes out the contents of the specified data memory.UQr嘉泰姆
Function Representation m & larr; 00HUQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
4、SET m UQr嘉泰姆
The instruction description sets each bit of the specified data memory to 1.UQr嘉泰姆
Function Representation m & larr; FFHUQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
5、CLRWDTUQr嘉泰姆
Instruction Description The WDT counter, pause flag PDF, and watchdog overflow flag TO are cleared.UQr嘉泰姆
Function Representation WDT & larr; 00HUQr嘉泰姆
TO & PDF ← 0UQr嘉泰姆
Impact flag bit TO, PDFUQr嘉泰姆
6、CLRWDT1UQr嘉泰姆
Instruction Description Clear WDT Timer, PDF and TO remain unchanged.UQr嘉泰姆
Function Representation WDT & larr; 00HUQr嘉泰姆
7、SWOP m,0 UQr嘉泰姆
The instruction description exchanges the lower 4 bits and the upper 4 bits of the designated data memory with each other.UQr嘉泰姆
Function representation m.3 ~ m.0 & harr; m.7 ~ m.4UQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
8、SWOP m,1UQr嘉泰姆
The instruction description exchanges the low 4 bits of the specified data memory with the high 4 bits, and then stores the results in the accumulator and specifies.UQr嘉泰姆
The data of the data register remains unchanged.UQr嘉泰姆
Function means ACC. 3~ACC. 0 ← m.7~m.4UQr嘉泰姆
ACC.7~ACC.4 ← m.3~m.0UQr嘉泰姆
Impact Flag NoneUQr嘉泰姆
9、STOPUQr嘉泰姆
Instruction Description This instruction terminates program execution and turns off the system clock. The contents of RAM and registers remain in their original state,UQr嘉泰姆
The WDT counter and divider are cleared to "0", the pause flag PDF is set to 1, and the WDT overflow flag TO is clearedUQr嘉泰姆
0。UQr嘉泰姆
Functional representation TO & larr; 0UQr嘉泰姆
PDF ← 1UQr嘉泰姆
影响标志位 TO、PDF
UQr嘉泰姆


6. Application Areas

With its low power consumption, high integration and rich peripheral resources, CXMC33129 is suitable for the following fields:UQr嘉泰姆

◆ Intelligent sensor nodes (temperature and humidity, pressure, light, etc.)UQr嘉泰姆

◆ Portable medical equipment (sphygmomanometer, thermometer)UQr嘉泰姆

◆ Industrial control and acquisition systemUQr嘉泰姆

◆ Control of household appliancesUQr嘉泰姆

◆ Internet of Things terminal equipmentUQr嘉泰姆


7. electrical characteristics

7.1. Limit parameters

UQr嘉泰姆
7.2. Electrical characteristicsUQr嘉泰姆
UQr嘉泰姆

8. Summary

CXMC33129 is a full-featured, balanced-performance 8-bit RISC microcontroller, especially for embedded applications that require power and precision. Its dual ADC design, temperature sensor and multi-mode support make it stand out in the competitive MCU market. Both beginners and senior engineers can quickly develop high-performance, low-power embedded systems based on CXMC33129.UQr嘉泰姆

If there are any other requirements, please feel free to let me know and we will adjust together.UQr嘉泰姆


9. Related ProductsUQr嘉泰姆

Model Characteristics SRAM OTP space ADC IO control port Timer Interrupt Source PWM Encapsulation form Remarks
CXMC33127 OTP MCU 256byte 8k*16bit 24bit two channels/8bit * 1 8 1 5 2 SSOP48 LCD with 18*4
CXMC33128 OTP MCU 256byte 8k*16bit 24bit two channels/8bit * 1 11 1 5 2 SOP20  
CXMC33129 OTP MCU 256byte 8k*16bit 24bit two channels/8bit * 1 10/13 1 5 2 SOP16/SOP20  
Model Characteristics SRAM OTP space ADC IO control port Timer Interrupt Source PWM Encapsulation form  
CXMC33130 OTP MCU 256byte 8k*16bit 24bit * 100.00g channel/8bit * 1 11 2 5 2 SOP20 (Special for Pricing Scale)