Using the HT45R38 to Measure Current and Voltage and Power Adjustment for Electric Hotplates
|
|
- Kelly Potter
- 5 years ago
- Views:
Transcription
1 Using the HT45R38 to Measure Current and Voltage and Power Adjustment for Electric Hotplates D/N: HA0146E Introduction In past years Electric Hotplates have become a common household electrical appliance possessing the following advantages: no flame, no smoke, power savings, time savings, ease of use etc. Electric hotplates have developed from the original hardware control to the present MCU control. The Holtek A/D type MCUs have seen extensive use in these applications and offer the advantages of low cost, high efficiency and rapid development times etc. The MCUs used in Electric Hotplates are: HT46R47, HT46R22/HT46R23, HT46R12A/ HT46R14A, HT46R32/HT46R34/HT46R322/HT46R342, HT45R38 etc. This application introduces an Electric Hotplate current measurement method and voltage measurement method. The main reason for measuring voltage and current is to calculate the power level, and if compared with the setup values of power, the result can be used to adjust the PWM level to achieve a stable power objective. 1
2 Current Measurement Principles IGBT Heating coil base Internal HT45R38 OPA HT45R38 MCU ADC0 input IGBT drive circuit Constantan Current Measurement Description Because electric hotplates operate using an electric heating a heating coil, there must be some method to measure the heating coil current. The method of detecting the current is to insert a 0.01Ω/3W constantan resistor in the ground circuit of the IGBT to enable conversion from current to voltage. This voltage can then by amplified by the internal op-amp in the HT45R38 and then given to the A/D channel 1 for sampling. In the actual application, because the electric hotplate heating coil generates interference, therefore after sampling the signal a dual RC filter circuit is added. After the current signal is amplified, there is another RC filter and finally the ADC conversion. During the current sampling, the gain of the non-inverting amplifier circuit is given by (1+R7/R6)=1+100/10=1+10= 11 times. Current Sampling Software Handling Routine The important point of the current sampling software design is to manage the interference. The sampling of a signal within a certain range is known as software filtering. When 10 sample groups are effective, then the largest and the smallest are discarded and the two middle groups are taken, after which the average value found of these two groups. This average value is then taken as the first effective sampled value. The actual handling software is as follows: 2
3 The following is: sample 10 groups of effective current values. ; current_ad() CURRENT_AD: MOV A, ADRH ; ADRH is the AD conversion register MOV tmp_1, A ; temporary AD sample value SUB A, MIN_CURRENT ; MIN_CURRENT is minimum current value JMP CA_BLWMIN MOV A, MAX_CURRENT ; MAX_CURRENT is maximum current value SUB A, tmp_1 JMP CA_BLWMIN ; if the A/D sampled value is between the largest and smallest values, then handle ; as an effective value, otherwise handle as a signal with interference MOV A, ad_current_count ; ad_current_count is the sample value counter ADD A, OFFSET ad_current_buff ; ad_current_buff is the sample value RAM address MOV A, ADRH MOV R0, A INC ad_current_count ; after saving eff. current value increment sample ; counter CA_BLWMIN: MOV A, 9 ; determine if 10 eff. groups have been sampled SUB A, ad_current_count SZ C JMP EXIT_CURRENT_AD CLR ad_current_count ; 10 eff. group samples, clear sample counter EXIT_CURRENT_AD: ; end of current_ad()
4 The following software takes 10 groups of effective current values and after ordering, calculates the average of the two middle groups and then places this average value in the ad_work_current register. ; mean_current() ; Function description: ; Obtain mean current AD value ; from ad_current_buff with 10 values ; by using buble sort way. ; Input Parameter: ; ad_current_buff ; Output Parameter: ; ad_work_current MEAN_CURRENT: CLR loop_k ; loop_k used to indicate which loop JMP CURR_CHECK_LOOP_K CURR_NEXT_LOOP_K: CLR flag_sort_over CLR loop_n JMP CURR_CHECK_LOOP_N CURR_NEXT_LOOP_N: MOV A, loop_n ADD A, OFFSET ad_current_buff MOV tmp_1, A ; flag to indicate which sort has data for interchange ; from loop_n take the i data from the non order list ; take the i data from the non order list and store in tmp_1 INCA loop_n ADD A, OFFSET ad_current_buff ; from loop_n take the i+1 data from the non order list SUB A, tmp_1 ; compare the i+1 data and the i data SZ C JMP CURR_NOT_SWAP MOV A, loop_n MOV tmp_2, A ADD A, OFFSET ad_current_buff MOV tmp_3, A ; temporary data pointer INCA tmp_2 ADD A, OFFSET ad_current_buff 4
5 MOV tmp_2, A MOV A, tmp_3 MOV A, tmp_2 MOV R0, A INCA loop_n ADD A, OFFSET ad_current_buff MOV A, tmp_1 MOV R0, A SET flag_sort_over CURR_NOT_SWAP: INC loop_n CURR_CHECK_LOOP_N: MOV A, 9 SUB A, loop_k MOV tmp_2, A MOV A, loop_n SUB A, tmp_2 JMP CURR_NEXT_LOOP_N SNZ flag_sort_over JMP EXIT_CURR_MEAN INC loop_k ; the i+1 sort CURR_CHECK_LOOP_K: MOV A, loop_k SUB A, 9 JMP CURR_NEXT_LOOP_K ; take the i+1 data and store in tmp_2 ; take the i+1 data and store in the i data location ; place the i data value into the i+1 data location ; setup the data exchange flag ; increment loop_n value, compare the i+1 and i+2 data ; loop_k used to indicate the i loop ; loop_n indicates the i loop, data compare count ; not finished ; if no data exchange then end ; the i sort becomes the last, increment loop_k, execute ; when loop_k=9 all data sorts are finished EXIT_CURR_MEAN: MOV A, OFFSET ad_current_buff ; average value for centre two groups ADD A, 4 MOV tmp_1, A ; store the 5 group value in tmp_1 MOV A, OFFSET ad_current_buff 5
6 ADD A, 5 ; store the 6 group in A CLR C ADDM A, tmp_1 ; add the 5 and the 6 group values RRCA tmp_1 MOV ad_work_current, A ; finally store the current value in ad_work_current ; end of mean_current() Voltage Measurement Principle Power Line AC220V Rectifier Diodes Divider Network Filter Circuit Voltage Measurement Description The voltage measurement description circuit measures the voltage between the L and N lines. After rectification by D1 and D2, and division by resistor divider R1 and R2, filtering by C1 and additional filtering by R3 and C2, the signal is transmitted to channel AN3 of the HT45R38 for A/D conversion. In the diagram V0 is: 220V 1.414=311V and V1 is: 6.8K/(6.8K+560K) 311V=3.73V. Voltage Sampling Software Management Program The important point of the voltage sampling software design is to manage the interference. The sampling of a signal within a certain range is known as software filtering. When 10 sample groups are effective, then the largest and the smallest are discarded and the two middle groups are taken, after which the average value found of these two groups. This average value is then taken as the first effective sampled value. The actual handling software is as follows: 6
7 ; voltage_ad() VOLTAGE_AD: MOV A, ADRH ; ADRH is the AD conversion register MOV tmp_1, A ; temporary AD sample value SUB A, MIN_VOLTAGE-10 ; MIN_VOLTAGE-10 smallest voltage JMP VA_BLW10 MOV A, MAX_VOLTAGE+10 ; MIN_VOLTAGE+10 largest voltage SUB A, tmp_1 JMP VA_BLW10 ; if the A/D sampled value is between the smallest and largest value, then treat as an effective ; value, otherwise treat as a interference signal ; MOV A, ad_voltage_count ; ad_voltage_coun is he sample value counter ADD A, OFFSET ad_voltage_buff ; ad_voltage_buff is the sample value store address MOV A, ADRH MOV R0, A INC ad_voltage_count ; after storing eff. current value, increment sample couter VA_BLW10: MOV A, 9 ; determine if sampled 10 groups are eff. values SUB A, ad_voltage_count SZ C JMP EXIT_VOLTAGE_AD CLR ad_voltage_count ; already sampled 10 eff. value groups, clear counter EXIT_VOLTAGE_AD: ; end of voltage_ad() The following program sorts the 10 groups of effective voltage values. The average of the middle two groups is calculated and stored in ad_work_voltage. ; mean_voltage() ; Function description: ; Obtain mean voltage AD value ; from ad_voltage_buff with 10 values ; by using buble sort way. ; Input Parameter: ; ad_voltage_buff ; Output Parameter: ; ad_work_voltage MEAN_VOLTAGE: CLR loop_k JMP VOLT_CHECK_LOOP_K ; loop_k indicates the sort 7
8 VOLT_NEXT_LOOP_K: CLR flag_sort_over CLR loop_n JMP VOLT_CHECK_LOOP_N ; flag indicates if sort needs exchange ; loop_n indicates end data and previous data compare count VOLT_NEXT_LOOP_N: MOV A, loop_n ADD A, OFFSET ad_voltage_buff ; from loop_n get the sort i data MOV tmp_1, A ; obtain no sort i data and store in tmp_1 INCA loop_n ADD A, OFFSET ad_voltage_buff ; from loop_n get no sort i+1 data SUB A, tmp_1 ; compare the i+1 data and i data SZ C JMP VOLT_NOT_SWAP MOV A, loop_n MOV tmp_2, A ADD A,OFFSET ad_voltage_buff MOV tmp_3, A INCA tmp_2 ADD A,OFFSET ad_voltage_buff MOV tmp_2, A MOV A, tmp_3 MOV A, tmp_2 MOV R0, A INCA loop_n ADD A, OFFSET ad_voltage_buff MOV A, tmp_1 MOV R0, A SET flag_sort_over ; temporary store the data pointer ; obtain the i+1 data store in tmp_2 ; place the i+1 data in the i data location ; place the i data in the i+1 data location ; setup data exchange flag VOLT_NOT_SWAP: INC loop_n ; increment loop_n counter, execute i+1 and i+2 compare 8
9 VOLT_CHECK_LOOP_N: MOV A, 9 SUB A, loop_k MOV tmp_2, A MOV A, loop_n SUB A, tmp_2 JMP VOLT_NEXT_LOOP_N ; loop_k used to indicate present i sort ; obtain no order data number ; loop_n indicates i sort data compare number ; not complete SNZ flag_sort_over JMP EXIT_VOLT_MEAN INC loop_k ; when i sort has finished increment loop_k and sort i+1 VOLT_CHECK_LOOP_K: MOV A, loop_k SUB A, 9 JMP VOLT_NEXT_LOOP_K ; when loop_k=9 data sorting has completed EXIT_VOLT_MEAN: MOV A, OFFSET ad_voltage_buff ; middle two groups average ADD A, 4 MOV tmp_1, A ; the 5 group in tmp_1 MOV A, OFFSET ad_voltage_buff ADD A, 5 ADD A, tmp_1 ; add the 5 and 6 group RRC ACC MOV ad_work_voltage, A ; final voltage in ad_work_voltage ; end of mean_voltage()
10 Power Calculation and Power Adjustment The electric hotplate power calculation is as follows: P=K V AD I AD, where P is the power, V AD is the voltage sample value (the above ad_work_voltage value), I AD is the current sample value (the above ad_work_current value). K is the power trimming coefficient. If the V AD I AD obtained value and the actual value has an error, then K is used for adjustment, therefore the value K V AD AD and the actual power is the same. ; power_calculation() ; Calculating working power accroding to P=K*Vad*Iad, ; where, K stands for power coefficient. ; Then adjusting power with standard power value. ; POWER_CALCULATION: ; result_hl = ad_work_voltage * ad_work_current MOV A, ad_work_current MOV data0_l, A ;( data1_l)*(data0_l) MOV A, ad_work_voltage MOV data1_l, A CALL MUL8UI ; 8bit multiply 8bit subroutine ; tmp_321 = result_hl * ad_power_coefficient MOV A, ad_power_coefficient MOV data1_l, A MOV A, 0 MOV data1_h, A ;(data1_h/ data1_l)*(data0_h/ data0_l) MOV A, result_h MOV data0_h, A MOV A, result_l MOV data0_l, A CALL MUL16UL ; 16bit multiply 16bit subroutine ; ad_work_power = tmp_321 /1000 ; calculate power level /1000 MOV A, 00h MOV data2_l, A MOV A, 03h MOV data1_h, A MOV A, 0e8h MOV data1_l, A ;(data2_h.data0_h.data0_l)/;(data2_l.data1_h.data1_l) MOV A, result1_l MOV data2_h, A MOV A, result_h MOV data0_h, A MOV A, result_l MOV data0_l, A 10
11 CALL DIV24UL ; 24bit divide 24bit routine EXECUTE_PWR_ADJUST: ; if(ad_work_power > ref_power_hl + offset_power) CLR C MOV A, offset_power ADDM A, ref_power_l MOV A, 0 ADCM A, ref_power_h ; setup power value(ref_power_h/ ref_power_l) - add offset ;(offset_power) MOV A, 80h XOR A, ref_power_h ; ref_power_h/ ref_power_l setup power value MOV tmp_3, A MOV A, 80h XOR A, result_h SUB A, tmp_3 ; determine if actual calculated power value > ; (setup power level + offset) JMP PWR_BLWMAX SNZ Z JMP PWR_LGMAX MOV A, ref_power_l SUB A, result_l PWR_LGMAX: DEC PWM0 NOP MOV A, PWM0 SUB A, MIN_PWM0 INC PWM0 ; if actual power > setup power then reduce PWM ; determine if PWM0 is reduced to smallest level ; if PWM0 is already reduced to smallest value then no ; change PWR_BLWMAX: ; if(ad_work_power < ref_power_hl - offset_power) CLR C MOV A, offset_power ADD A, offset_power MOV tmp_3, A ;(offset_power*2) register tmp_3 中 MOV A, ref_power_l SUB A, tmp_3 MOV ref_power_l, A CLR tmp_3 MOV A, ref_power_h SBC A, tmp_3 ; setup power level value minus offset (offset_power*2) MOV ref_power_h, A 11
12 MOV A, 80h XOR A, result_h MOV tmp_3, A MOV A, 80h XOR A, ref_power_h SUB A, tmp_3 JMP EXIT_POWER_CHK SNZ Z JMP PWR_BLWMIN MOV A, result_l SUB A, ref_power_l PWR_BLWMIN: INC PWM0 NOP MOV A, PWM0 SUB A, MAX_PWM0 SZ C DEC PWM0 ; if present power level > (setup value offset) ; and < (setup value + offset) then no need to adjust power ; actual power level greater setup value ; if actual power value > set value then reduce PWM ; ckeck if PWM0 has increased to largest value ; if PWM0 is reduced to lowest value then do not change EXIT_POWER_CHK: CLR C MOV A, offset_power ADDM A, ref_power_l MOV A, 0 ADCM A, ref_power_h ; end of power_calculation() ; because the compare process changed the power value ; return to the setup value 12
13 In the following power adjustment programs, for the multiplication and division routines, at the beginning of these routines the input and output parameters must be declared, before calling. ; mul8ui() ; Function description: ; 8 bits multiply 8 bits. ; Input Parameter: ; multiplicand: data0_l ; multiplicator: data1_l ; Output Parameter: ; result: result_h.result_l MUL8UI: CLR result_l CLR result_h MOV A, 08h MOV loop_i, A RRADD: CLR C RRC result_h RRC data1_l JMP RR1 MOV A, data0_l ADDM A, result_h RR1: SDZ loop_i JMP RRADD RRC result_h RRC data1_l MOV A, data1_l MOV result_l, A ; end of mul8ui() ; mul16ul() ; Function description: ; 16 bits multiply 16 bits. ; Input Parameter: ; multiplicand: data0_h.data0_l ; multiplicator: data1_h.data1_l ; Output Parameter: 13
14 ; result: result1_h.result1_l ;.result_h.result_l MUL16UL: CLR result_l CLR result_h CLR result1_l CLR result1_h MOV A, 10h MOV loop_i, A rradd16: CLR C RRC result1_h RRC result1_l RRC data1_h RRC data1_l JMP rr116 MOV A, data0_l ADDM A, result1_l MOV A, data0_h ADCM A, result1_h rr116: SDZ loop_i JMP rradd16 RRC result1_h RRC result1_l RRC data1_h RRC data1_l MOV A, data1_l MOV result_l, A MOV A, data1_h MOV result_h, A ; end of mul16ul() ; div24ul() ; Function description: ; 24 bits divided by 24 bits. ; Input Parameter: ; dividend: data2_h.data0_h.data0_l ; divisor : data2_l.data1_h.data1_l 14
15 ; Output Parameter: ; quotient: result2_h.result_h.result_l ; remainder: result2_l.result1_h.result1_l DIV24UL: CLR result_l CLR result_h CLR result1_l CLR result1_h CLR result2_l CLR result2_h MOV A, 18h MOV loop_i, A SZ data2_l JMP start24 SZ data1_h JMP start24 SZ data1_l JMP start24 start24: SZ JMP div24 SZ JMP div24 SZ JMP div24 data2_h data0_h data0_l div24: CLR C RLC data0_l RLC data0_h RLC data2_h RLC result1_l RLC result1_h RLC result2_l MOV A, result1_l SUB A, data1_l MOV tmp_1, A MOV A, result1_h SBC A, data1_h MOV tmp_2, A MOV A, result2_l SBC A, data2_l JMP next24 MOV result2_l, A 15
16 MOV A, tmp_2 MOV result1_h, A MOV A, tmp_1 MOV result1_l, A MOV A, 01h ADDM A, data0_l MOV A, 00h ADCM A, data0_h ADCM A, data2_h next24: SDZ loop_i JMP div24 dispa24: MOV A, data2_h MOV result2_h, A MOV A, data0_h MOV result_h, A MOV A, data0_l MOV result_l, A ; end of div24ul() Conclusion In this application we introduced the circuit design principles of current and voltage sampling for electric hotplate applications. The application also provided current sampling filter functions and voltage sampling software source code. Finally it was shown how to calculate power values based on the current and voltage values thus adjusting the power levels. 16
HT8 UL60730 Safety Library -- ALU Test
HT8 UL60730 Safety Library -- ALU Test D/: A0378E Introduction In general, the UL/CSA 60730 safety standard applies to automatic electrical controls for use in, on, or in association with equipment for
More informationHT46R46/C46/R47/C47/R48A/C48A/R49 Cost-Effective A/D Type 8-Bit MCU
Cost-Effective A/D Type 8-Bit MCU Features Operating voltage: f SYS =4MHz: 2.2V~5.5V f SYS =8MHz: 3.3V~5.5V 13 to 23 bidirectional I/O lines External interrupt input shared with an I/O line 8-bit programmable
More informationHT48RA0-2/HT48CA0-2 Remote Type 8-Bit MCU
Remote Type 8-Bit MCU Technical Document Tools Information FAQs Application Note HA006E Writing and Reading to the HT24 EEPROM with the HT48 MCU Series HA008E Controlling the HT62 LCD Controller with the
More informationRead and Write Control of the HT1380
Read and Write Control of the HT1380 D/N HA0049E Introduction Driver Description This application note applies to the HT48XXX and HT46XXX MCU devices. The HT1380/HT1381 is a standard Holtek device which
More informationHT48 & HT46 MCU UART Software Implementation Method
HT48 & HT46 MCU UART Software Implementation Method HT48 & HT46 MCU UART Software Implementation Method D/NHA0004E Introduction With low power consumption and high performance, Holtek s 8-bit microcontrollers
More informationSmall Package 8-Bit OTP MCU HT48R005/HT46R005
Small Package 8-Bit OTP MCU HT48R005/HT46R005 Revision: 1.00 November 29, 2011 Table of Contents Features...5 CPU Features...5 Peripheral Features...5 General...5 Selection Table...6 Block Diagram...6
More informationControlling the HT1621 LCD Controller With the HT48 MCU Series
Controlling the HT1621 LCD Controller With the HT48 MCU Series D/N HA0018E Introduction The HT1621 is a 128-bit multi-function LCD controller device with internal RAM memory mapping. The software configuration
More informationHT46R01/HT46R02/HT46R03
1-Pin MSOP A/D Type 8-Bit OTP MCU Technical Document Tools Information FAQs Application Note HA3E Communicating between the HT48 & HT46 Series MCUs and the HT93LC46 EEPROM HA16E Writing and Reading to
More informationUsing the HT45R36 and HT45R38 to implement Touch Switches
Using the HT45R36 and HT45R38 to implement Touch Switches D/N: HA0115E Introduction This example uses the C/R to F internal feature of the HT45R36 and HT45R38 to implement a Touch Switch. It is one way
More informationPin Assignment 2 ) # 2 ) % 2 ) $ 2 )! 2 ) 6 2 ) 2 )! " 4 # $ % /, & ' ' & % $ # "! 2 ) " : /, * ) 6 8,, * $ * 2 ) # 2 ) %
RF One Channel Mouse 8-bit OTP MCU Technical Document Tools Information FAQs Application Note HA0075E MCU Reset and Oscillator Circuits Application Note Features Operating voltage: f SYS = 27MHz: 2.0V~3.3V
More informationHT46F46E/HT46F47E/HT46F48E/HT46F49E. Cost-Effective A/D Flash Type 8-Bit MCU with EEPROM. Technical Document. Features. General Description
Cost-Effective A/D Flash Type 8-Bit MCU with EEPROM Technical Document Tools Information FAQs Application Note HA0052E Microcontroller Application - Battery Charger HA0075E MCU Reset and Oscillator Circuits
More informationRead and Write Control of the HT1380/HT1381
Read and Write Control of the HT1380/HT1381 D/N:AN0049E Introduction Driver Description This application note applies to the HT48xxx and HT46xxx MCU devices. The HT1380/ HT1381 is a standard Holtek device
More informationProgramming of 8085 microprocessor and 8051 micro controller Study material
8085 Demo Programs Now, let us take a look at some program demonstrations using the above instructions Adding Two 8-bit Numbers Write a program to add data at 3005H & 3006H memory location and store the
More informationMicroprocessors 1. The 8051 Instruction Set. Microprocessors 1 1. Msc. Ivan A. Escobar Broitman
Microprocessors 1 The 8051 Instruction Set Microprocessors 1 1 Instruction Groups The 8051 has 255 instructions Every 8-bit opcode from 00 to FF is used except for A5. The instructions are grouped into
More informationHT48F06E/HT48F10E/HT48F30E I/O Flash Type MCU with EEPROM
I/O Flash Type MCU with EEPROM Features Operating voltage: f SYS =4MHz: 2.2V~5.5V f SYS =8MHz: 3.3V~5.5V f SYS =12MHz: 4.5V~5.5V Multi-programmable Flash Type Program Memory EEPROM data memory: 128 8 From
More informationHT45R0072 I/O 8-Bit MCU with USB Interface
I/O 8-Bit MCU with USB Interface Features Operating voltage: f SYS =6M/2MHz: 3.6V~5.5V (VBUS) Low voltage reset function 34 bidirectional I/O lines (max.) 8-bit programmable timer/event counter with overflow
More information8051 Microcontroller
8051 Microcontroller EE4380 Fall 2001 Pari vallal Kannan Center for Integrated Circuits and Systems University of Texas at Dallas 8051 Architecture Programmer s View Register Set Instruction Set Memory
More informationEXAMPLE PROGRAMS 8085
P! EXAMPLE PROGRAMS 8085 Statement:Multiply the 8-bit unsigned number in memory location 2200H by the 8-bit unsigned number in memory location 2201H. Store the 8 least significant bits of the result in
More informationHT48RA0-5 Remote Type 8-Bit OTP MCU
Remote Type 8-Bit OTP MCU Features Operating voltage: f SYS =4MHz at V DD =2.0V~3.6V (LVR enabled) f SYS =4MHz at V DD =.8V~3.6V (LVR disabled) Oscillator types: External high frequency Crystal -- HXT
More informationHT82B40R/HT82B40A I/O 8-Bit MCU with USB Interface
I/O 8-Bit MCU with USB Interface Features Operating voltage: f SYS =6M/2MHz: 3.3V~5.5V Low voltage reset function 34 bidirectional I/O lines (max.) 8-bit programmable timer/event counter with overflow
More informationMicrocontroller Intel [Instruction Set]
Microcontroller Intel 8051 [Instruction Set] Structure of Assembly Language [ label: ] mnemonic [operands] [ ;comment ] Example: MOV R1, #25H ; load data 25H into R1 2 8051 Assembly Language Registers
More informationHT48R11 8-bit OTP Microcontrollers
8-bit OTP Microcontrollers Features Operating voltage: 3.0V~5.2V 8 bidirectional I/O lines Interrupt input 8-bit programmable timer/event counter with overflow interrupt On-chip crystal and RC oscillator
More informationHT48R32 8-bit OTP Microcontrollers
8-bit OTP Microcontrollers Features Operating voltage: 3.0V~5.2V 22 bidirectional I/O lines An interrupt input An 8-bit programmable timer/event counter with overflow interrupt On-chip crystal and RC oscillator
More informationArchitecture & Instruction set of 8085 Microprocessor and 8051 Micro Controller
of 8085 microprocessor 8085 is pronounced as "eighty-eighty-five" microprocessor. It is an 8-bit microprocessor designed by Intel in 1977 using NMOS technology. It has the following configuration 8-bit
More informationHT48RAx/HT48CAx Software Application
HT48RAx/HT48CAx Software Application Note D/N: HA0076E Introduction CALL and JUMP will load the BP to program counter. Interrupt will store the contents of program counter into stack. RETI/RET will load
More informationData Acquisition Using INS8048
Data Acquisition Using INS8048 Abstract This application note describes techniques for interfacing National Semiconductor s ADC0833 serial I O and ADC0804 parallel I O A D converters to the INS8048 family
More informationET355 Microprocessors Thursday 6:00 pm 10:20 pm
ITT Technical Institute ET355 Microprocessors Thursday 6:00 pm 10:20 pm Unit 4 Chapter 6, pp. 139-174 Chapter 7, pp. 181-188 Unit 4 Objectives Lecture: BCD Programming Examples of the 805x Microprocessor
More informationLecture 9. INC and DEC. INC/DEC Examples ADD. Arithmetic Operations Overflow Multiply and Divide
Lecture 9 INC and DEC Arithmetic Operations Overflow Multiply and Divide INC adds one to a single operand DEC decrements one from a single operand INC destination DEC destination where destination can
More informationHT1380 HT driver READ_ driver WRITE_1380
HA0049s HT1380/HT1381 MCU 32K HT1380/HT1381 DRIVER driver driver rw_ht1380.asm I/O.section data equ driver 1 driver READ_1380 none acc time_temp, time_count 2 driver WRITE_1380 acc none time_temp, time_count
More informationHT48F70E I/O Flash Type MCU with EEPROM
I/O Flash Type MCU with EEPROM Features Operating voltage: f SYS =4MHz: 2.2V~5.5V f SYS =8MHz: 3.3V~5.5V f SYS =12MHz: 4.5V~5.5V Multi-programmable Flash Type Program Memory: 819216 EEPROM Data Memory:
More informationIBM PC Hardware CPU 8088, Pentium... ALU (Arithmetic and Logic Unit) Registers. CU (Control Unit) IP.
IBM PC Hardware CPU 8088, 8086 80286 80386 80486 Pentium... ALU (Arithmetic and Logic Unit) Registers CU (Control Unit) IP Memory ROM BIOS I/O RAM OS Programs Video memory BIOS data Interrupt Vectors Memory
More informationContents 8051 Instruction Set BY D. BALAKRISHNA, Research Assistant, IIIT-H Chapter I : Control Transfer Instructions Lesson (a): Loop Lesson (b): Jump (i) Conditional Lesson (c): Lesson (d): Lesson (e):
More informationMemory organization Programming model - Program status word - register banks - Addressing modes - instruction set Programming examples.
MICROCONTROLLERS AND APPLICATIONS 1 Module 2 Module-2 Contents: Memory organization Programming model - Program status word - register banks - Addressing modes - instruction set Programming examples. MEMORY
More informationPractical Course File For
Practical Course File For Microprocessor (IT 473) B.Tech (IT) IV-SEM Department of IT University Institute of Engineering & Technology Panjab University, Chandigarh Page 1 INTRODUCTION... 4 EXPERIMENT-1:
More informationHT48R10A-1/HT48C10-1 I/O Type 8-Bit MCU
I/O Type 8-Bit MCU Technical Document Tools Information FAQs Application Note HA0003E Communicating between the HT48 & HT46 Series MCUs and the HT93LC46 EEPROM HA0004E HT48 & HT46 MCU UART Software Implementation
More information8051 Overview and Instruction Set
8051 Overview and Instruction Set Curtis A. Nelson Engr 355 1 Microprocessors vs. Microcontrollers Microprocessors are single-chip CPUs used in microcomputers Microcontrollers and microprocessors are different
More informationEXPERIMENT NO.1. A Microcontroller is a complete computer system built on a single chip.
EXPERIMENT NO.1 AIM: Study of 8051 Microcontroller TOOLS: 8051 kit THEORY: Salient Features of 8051 A Microcontroller is a complete computer system built on a single chip. It contains all components like
More informationLecture 8: Addition, Multiplication & Division
Lecture 8: Addition, Multiplication & Division Today s topics: Signed/Unsigned Addition Multiplication Division 1 Signed / Unsigned The hardware recognizes two formats: unsigned (corresponding to the C
More informationHT36A4 Music Synthesizer 8-Bit MCU
Music Synthesizer 8-Bit MCU Technical Document Tools Information FAQs Application Note Features Operating voltage: 2.4V~5.0V Operating frequency: 3.58MHz~2MHz (typ. 8MHz) 8 bidirectional I/O lines Two
More informationHT82K70E-L/HT82K70A-L/HT82K76E-L I/O Type 8-Bit MCU
I/O Type 8-Bit MCU Features Operating voltage: 1.8V~5.5V 43 bidirectional I/O lines Program Memory: 4K16 -- HT82K70E-L/HT82K70A-L 8K16 -- HT82K76E-L 2168 Data RAM One external interrupt input shared with
More informationLesson 1: THE DECIMAL SYSTEM
Lesson 1: THE DECIMAL SYSTEM The word DECIMAL comes from a Latin word, which means "ten. The Decimal system uses the following ten digits to write a number: 0, 1, 2, 3, 4, 5, 6, 7, 8, and 9. Each time
More informationENE 334 Microprocessors
Page 1 ENE 334 Microprocessors Lecture 10: MCS-51: Logical and Arithmetic : Dejwoot KHAWPARISUTH http://webstaff.kmutt.ac.th/~dejwoot.kha/ ENE 334 MCS-51 Logical & Arithmetic Page 2 Logical: Objectives
More informationHT56R67/HT56R668/HT56R678 TinyPower TM A/D Type with LCD 8-Bit OTP MCU
TinyPower TM A/D Type with LCD 8-Bit OTP MCU Technical Document Application Note HA0075E MCU Reset and Oscillator Circuits Application Note Features Operating voltage: f SYS =100kHz: 2.2V~5.5V f SYS =4MHz:
More informationQ. Classify the instruction set of 8051 and list out the instructions in each type.
INTRODUCTION Here is a list of the operands and their meanings: A - accumulator; Rn - is one of working registers (R0-R7) in the currently active RAM memory bank; Direct - is any 8-bit address register
More informationI/O Type 8-Bit OTP MCU with High Current LED Driver
I/O Type 8-Bit OTP MCU with 66 High Current LED Driver Features Operating voltage: f SYS =32768Hz: 2.2V~5.5V f SYS =4MHz: 2.2V~5.5V f SYS =8MHz: 3.3V~5.5V 2k4 program memory ROM 888 data memory RAM 8 bidirectional
More informationDigital Blocks Semiconductor IP
Digital Blocks Semiconductor IP 805 Microcontroller General Description The Digital Blocks Microcontroller Verilog IP Core is complaint with the MCS 5 Instruction Set and contains standard 805 MCU peripherals,
More informationUNIT 2 THE 8051 INSTRUCTION SET AND PROGRAMMING
UNIT 2 THE 8051 INSTRUCTION SET AND PROGRAMMING Instructions Alphabetical List of Instructions ACALL: Absolute Call ADD, ADDC: Add Accumulator (With Carry) AJMP: Absolute Jump ANL: Bitwise AND CJNE: Compare
More informationHALT function and wake-up feature reduce power consumption Six-level subroutine nesting Bit manipulation instructions Crystal or RC oscillator
8-Bit Multimedia Keyboard Encoder OTP MCU Features Operating voltage: 2.4V~5.5V 32/34 bidirectional I/O lines One 8-bit programmable timer counter with overflow interrupts HALT function and wake-up feature
More informationDigital Blocks Semiconductor IP
805 SFR Bus Digital Blocks Semiconductor IP 805 Microcontroller Configurable Peripherals General Description The Digital Blocks (Configurable Peripherals) Microcontroller Verilog IP Core is complaint with
More informationBINARY SYSTEM. Binary system is used in digital systems because it is:
CHAPTER 2 CHAPTER CONTENTS 2.1 Binary System 2.2 Binary Arithmetic Operation 2.3 Signed & Unsigned Numbers 2.4 Arithmetic Operations of Signed Numbers 2.5 Hexadecimal Number System 2.6 Octal Number System
More informationHT46R46-H Cost-Effective A/D Type 8-Bit OTP MCU
Cost-Effective A/D Type 8-Bit OTP MCU Technical Document Tools Information FAQs Application Note HA0003E Communicating between the HT48 & HT46 Series MCUs and the HT93LC46 EEPROM HA0009E HT48 & HT46 MCU
More informationCHAPTER 8. Solutions for Exercises
CHAPTER 8 Solutions for Exercises E8.1 The number of bits in the memory addresses is the same as the address bus width, which is 20. Thus the number of unique addresses is 2 20 = 1,048,576 = 1024 1024
More informationHT95R22 I/O Type Phone 8-bit MCU
I/O Type Phone 8-bit MCU Features Operating voltage at f SYS = 3.58MHz: 2.2V~5.5V 4K6 OTP type Program Memory 5768 Data Memory 8 bidirectional I/Os with pull-high options 2 NMOS output-only lines External
More informationModule 8: Atmega32 Stack & Subroutine. Stack Pointer Subroutine Call function
Module 8: Atmega32 Stack & Subroutine Stack Pointer Subroutine Call function Stack Stack o Stack is a section of RAM used by the CPU to store information temporarily (i.e. data or address). o The CPU needs
More informationHT46R47/HT46R47-H Cost-Effective A/D Type 8-Bit OTP MCU
Cost-Effective A/D Type 8-Bit OTP MCU Technical Document Tools Information FAQs Application Note HA0003E Communicating between the HT48 & HT46 Series MCUs and the HT93LC46 EEPROM HA0009E HT48 & HT46 MCU
More informationSubroutines & Software Delay Routines
Subroutines & Software Delay Routines Department of EIE / Pondicherry Engineering College 1 Subroutines & Software Delay Routines This chapter introduces software based timing routines. The examples introduce
More informationSN8F5000 Family Instruction Set
SONiX Technology Co., Ltd. 8051-based Microcontroller 1 Overview SN8F5000 is 8051 Flash Type microcontroller supports comprehensive assembly instructions and which are fully compatible with standard 8051.
More informationCOMP2121: Microprocessors and Interfacing
nterfacing Overview Arithmetic and Logic nstructions in AR ample AR Assembly Programs Using AL instructions Lecture 8: Arithmetic and logic nstructions http://www.cse.unsw.edu.au/~cs2121 Lecturer: ui Wu
More informationUsing the Data EEPROM in the HT66Fxx
Using the Data EEPROM in the HT66Fxx D/N: AN0191E Introduction The HT66Fxx series device contains an area of internal EEPROM Data Memory. The following gives a description about the EEPROM Data Memory
More informationFixed-Point Math and Other Optimizations
Fixed-Point Math and Other Optimizations Embedded Systems 8-1 Fixed Point Math Why and How Floating point is too slow and integers truncate the data Floating point subroutines: slower than native, overhead
More informationHT46R47 8-Bit A/D Type OTP MCU
8-Bit A/D Type OTP MCU Features Operating voltage: f SYS =4MHz: 3.3V~5.5V f SYS =8MHz: 4.5V~5.5V 3 bidirectional I/O lines (max.) interrupt input shared with an I/O line 8-bit programmable timer/event
More informationHT48 & HT46 LCM Interface Design
HT48 & HT46 LCM Interface Design D/N HA0013E Introduction The following note introduces a way of using 8 bit MCUs to control a DV16100NRB LCD display driver. The LCM is driven and controlled by a built-in
More informationAssembly Language programming (2)
EEE3410 Microcontroller Applications LABORATORY Experiment 2 Assembly Language programming (2) Name Class Date Class No. Marks Arithmetic, Logic and Jump instructions Objectives To learn and practice the
More informationPrinciple and Interface Techniques of Microcontroller
Principle and Interface Techniques of Microcontroller --8051 Microcontroller and Embedded Systems Using Assembly and C LI, Guang ( 李光 ) Prof. PhD, DIC, MIET WANG, You ( 王酉 ) PhD, MIET 杭州 浙江大学 2011 Chapter
More informationTUTORIAL Assembly Language programming (2)
8051 Assembly Language programming (2) TUTORIAL 4 EEE3410 Microcontroller Applications 1. Write the instructions to move value 34h into register A and value 3Fh into register B, then add them together.
More informationHighlights. FP51 (FPGA based 1T 8051 core)
Copyright 2017 PulseRain Technology, LLC. FP51 (FPGA based 1T 8051 core) 10555 Scripps Trl, San Diego, CA 92131 858-877-3485 858-408-9550 http://www.pulserain.com Highlights 1T 8051 Core Intel MCS-51 Compatible
More informationCHAPTER 2 (b) : AND CODES
DKT 122 / 3 DIGITAL SYSTEMS 1 CHAPTER 2 (b) : NUMBER SYSTEMS OPERATION AND CODES m.rizal@unimap.edu.my sitizarina@unimap.edu.my DECIMAL VALUE OF SIGNED NUMBERS SIGN-MAGNITUDE: Decimal values of +ve & -ve
More information8085 Microprocessor Programs
8085 Microprocessor Programs Courtesy : www.8085projects.info Rachit Agrawal 07-CE-52 Kalol Institute of Technology & Research Center PROGRAMS FOR 8085 MICROPROCESSOR PROGRAMS FOR LEARNERS 1. Store 8-bit
More informationDHANALAKSHMI COLLEGE OF ENGINEERING DEPARTMENT OF ELECTRICAL AND ELECTRONICS ENGINEERING YEAR : III SEM : VI
DHANALAKSHMI COLLEGE OF ENGINEERING DEPARTMENT OF ELECTRICAL AND ELECTRONICS ENGINEERING YEAR : III SEM : VI EE2354- MICROPROCESSORS AND MICROCONTROLLER UNIT I 8085 and 8086 PROCESSOR PART A 1. Define
More informationDec Hex Bin ORG ; ZERO. Introduction To Computing
Dec Hex Bin 0 0 00000000 ORG ; ZERO Introduction To Computing OBJECTIVES this chapter enables the student to: Convert any number from base 2, base 10, or base 16 to any of the other two bases. Add and
More information9 Multiplication and Division
9 Multiplication and Division Multiplication is done by doing shifts and additions. Multiplying two (unsigned) numbers of n bits each results in a product of 2n bits. Example: 0110 x 0011 (6x3) At start,
More informationDigital Blocks Semiconductor IP
Digital Blocks Semiconductor IP DB805C-FSM 805 Microcontroller FSM Finite State Machine General Description The Digital Blocks DB805C-FSM IP Core contains Digital Blocks compact DB805C CPU Core & GPIO
More information8051 Programming: Arithmetic and Logic
8051 Programming: Arithmetic and Logic EE4380 Fall 2002 Class 4 Pari vallal Kannan Center for Integrated Circuits and Systems University of Texas at Dallas Topics Signed and Unsigned arithmetic Binary
More informationINSTITUTE OF ENGINEERING AND MANAGEMENT, KOLKATA Microprocessor
INSTITUTE OF ENGINEERING AND MANAGEMENT, KOLKATA Microprocessor Subject Name: Microprocessor and Microcontroller Year: 3 rd Year Subject Code: CS502 Semester: 5 th Module Day Assignment 1 Microprocessor
More informationChapter 5: Computer Arithmetic. In this chapter you will learn about:
Slide 1/29 Learning Objectives In this chapter you will learn about: Reasons for using binary instead of decimal numbers Basic arithmetic operations using binary numbers Addition (+) Subtraction (-) Multiplication
More informationHT46RU26/HT46CU26 A/D Type 8-Bit MCU with UART
A/D Type 8-Bit MCU with UART Technical Document Tools Information FAQs Application Note HA0003E Communicating between the HT48 & HT46 Series MCUs and the HT93LC46 EEPROM HA0049E Read and Write Control
More informationHT48R06A-1/HT48C06. 8-Bit Cost-Effective I/O Type MCU. Features. General Description. Block Diagram
8-Bit Cost-Effective I/O Type MCU Features Operating voltage: f SYS =4MHz: 2.2V~5.5V f SYS =8MHz: 3.3V~5.5V 3 bidirectional I/O lines An interrupt input shared with an I/O line 8-bit programmable timer/event
More informationCOMPUTER ARCHITECTURE AND ORGANIZATION. Operation Add Magnitudes Subtract Magnitudes (+A) + ( B) + (A B) (B A) + (A B)
Computer Arithmetic Data is manipulated by using the arithmetic instructions in digital computers. Data is manipulated to produce results necessary to give solution for the computation problems. The Addition,
More informationLearning Objectives. Binary over Decimal. In this chapter you will learn about:
Ref Page Slide 1/29 Learning Objectives In this chapter you will learn about: Reasons for using binary instead of decimal numbers Basic arithmetic operations using binary numbers Addition (+) Subtraction
More informationComputer Organization
Computer Organization (Instruction set Architecture & Assembly Language Programming) KR Chowdhary Professor & Head Email: kr.chowdhary@gmail.com webpage: krchowdhary.com Department of Computer Science
More informationAdding Binary Integers. Part 4. Negative Binary. Integers. Adding Base 10 Numbers. Adding Binary Example = 10. Arithmetic Logic Unit
Part 4 Adding Binary Integers Arithmetic Logic Unit = Adding Binary Integers Adding Base Numbers Computer's add binary numbers the same way that we do with decimal Columns are aligned, added, and "'s"
More information1. Write A Program to move a block of data within the internal RAM
UNIT 2: Example Programs. 1. Write A Program to move a block of data within the internal RAM Org 0h start1: mov r0,#40h ;r0 pointed to internal RAM 40h mov r1,#30h ;r1 pointing to internal RAM 030h mov
More informationComputer Systems Lecture 9
Computer Systems Lecture 9 CPU Registers in x86 CPU status flags EFLAG: The Flag register holds the CPU status flags The status flags are separate bits in EFLAG where information on important conditions
More informationSX Arithmetic Routines
Application Note 13 November 2000 1.0 Introduction This application note presents programming techniques for performing commonly found arithmetic operations, such as multi-byte binary addition and subtraction,
More informationHT46R32/HT46R34 A/D Type 8-Bit OTP MCU with OPA
A/D Type 8-Bit OTP MCU with OPA Technical Document Tools Information FAQs Application Note HA0003E Communicating between the HT48 & HT46 Series MCUs and the HT93LC46 EEPROM HA0049E Read and Write Control
More informationValliammai Engineering College
Valliammai Engineering College SRM Nagar, Kattankulathur - 603203 Department of Electrical and Electronics Engineering EE6612 Microprocessors and Microcontrollers Laboratory LAB MANUAL VI Semester - Electrical
More information1. Divide by using long division. (8x 3 + 6x 2 + 7) (x + 2)
Bellwork 0-7-4. Divide by using long division. (8x + 6x 2 + 7) (x + 2) Synthetic division is a shorthand method of dividing a polynomial by a linear binomial by using only the coefficients. For synthetic
More informationHT46R53A/HT46R54A A/D Type 8-Bit OTP MCU
A/D Type 8-Bit OTP MCU Features Low-power fully static CMOS design Operating voltage: f SYS =4MHz: 2.2V~5.5V f SYS =8MHz: 3.3V~5.5V Program Memory: 2K5 OTP (HT46R53A) 4K5 OTP (HT46R54A) Data memory: 928
More informationComputer Architecture Prof. Smruti Ranjan Sarangi Department of Computer Science and Engineering Indian Institute of Technology, Delhi
Computer Architecture Prof. Smruti Ranjan Sarangi Department of Computer Science and Engineering Indian Institute of Technology, Delhi Lecture - 11 X86 Assembly Language Part-II (Refer Slide Time: 00:25)
More informationELEG3923 Microprocessor Ch.6 Arithmetic and Logics
Department of Electrical Engineering University of Arkansas ELEG3923 Microprocessor Ch.6 Arithmetic and Logics Dr. Jingxian Wu wuj@uark.edu OUTLINE 2 Arithmetic instructions Signed number operations Logic
More informationHT48R70A-1/HT48C Bit I/O Type MCU
8-Bit I/O Type MCU Features Operating voltage: f SYS =4MHz: 2.2V~5.5V f SYS =8MHz: 3.3V~5.5V Low voltage reset function 56 bidirectional I/O lines (max.) interrupt input 26-bit programmable timer/event
More informationNumber System. Introduction. Natural Numbers (N) Whole Numbers (W) Integers (Z) Prime Numbers (P) Face Value. Place Value
1 Number System Introduction In this chapter, we will study about the number system and number line. We will also learn about the four fundamental operations on whole numbers and their properties. Natural
More informationDodatak. Skup instrukcija
Dodatak Skup instrukcija Arithmetic Operations [@Ri] implies contents of memory location pointed to by R0 or R1 Rn refers to registers R0-R7 of the currently selected register bank 2 ADD A,
More informationHT46R47/HT46C47 A/D Type 8-Bit MCU
A/D Type 8-Bit MCU Features Operating voltage: f SYS =4MHz: 2.2V~5.5V f SYS =8MHz: 3.3V~5.5V 3 bidirectional I/O lines (max.) interrupt input shared with an I/O line 8-bit programmable timer/event counter
More informationHT48R05A-1/HT48C05/ HT48R06A-1/HT48C06/HT48R08A-1 Cost-Effective I/O Type 8-Bit MCU
HT48R5A-/HT48C5/ HT48R6A-/HT48C6/HT48R8A- Cost-Effective I/O Type 8-Bit MCU Technical Document Tools Information FAQs Application Note HA3E Communicating between the HT48 & HT46 Series MCUs and the HT93LC46
More informationMicrocontroller. Instruction set of 8051
UNIT 2: Addressing Modes and Operations: Introduction, Addressing modes, External data Moves, Code Memory, Read Only Data Moves / Indexed Addressing mode, PUSH and POP Opcodes, Data exchanges, Example
More informationMAHALAKSHMI ENGINEERING COLLEGE TIRUCHIRAPALLI
MAHALAKSHMI ENGINEERING COLLEGE TIRUCHIRAPALLI-621213. QUESTION BANK DEPARTMENT: EEE SUB CODE: EE2324 YR/ SEM:III/ VI SUB NAME: MICROPROCESSORS & MICROCONTROLLERS UNIT 2- PROGRAMMING OF 8085 MICROPROCESSORS
More informationLecture Topics. Announcements. Today: Integer Arithmetic (P&H ) Next: The MIPS ISA (P&H ) Consulting hours. Milestone #1 (due 1/26)
Lecture Topics Today: Integer Arithmetic (P&H 3.1-3.4) Next: The MIPS ISA (P&H 2.1-2.14) 1 Announcements Consulting hours Milestone #1 (due 1/26) Milestone #2 (due 2/2) 2 1 Review: Integer Operations Internal
More informationAPPLICATION NOTE 601 Accelerating 16/32-Bit Math Operations with the DS80C390/ DS80C400
Maxim > App Notes > MICROCONTROLLERS Keywords: high speed microcontroller, DS80C390, DS80C400, CAN, controller area network, math accelerator, math acceleration, 16-bit math, special function registers,
More informationApplication Note: Push Buttons & Path Switcher
Application Note: Push Buttons & Path Switcher Introduction This application note presents programming techniques for implementing and debouncing from 1-4 push buttons. This implementation also demonstrates
More information