Реклама на сайте DatasheetsDatasheets

KAZUS.RUN - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Книги и журналы
FAQ по электронике

  Datasheets
Поиск SMD
Онлайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Схемы и проекты
Принципиальные схемы
  Программы
Каталог сайтов
Калькуляторы
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы

помогите новичку

Непрочитано 01.12.2004, 20:06  
алексей
Гость
 
Сообщений: n/a
По умолчанию помогите новичку

помогите как выполнить преобразование из двоичного
в десятичное
т.е. на входе езмеренное АЦП Pic-ом напряжение 0...ff на
выходе должно получиться 0...99 которое выводиться на 2х
разрядный индикатор. как его преобразовать и потом разложить на разряды с последующим выводом наиндикатор
[email protected]
Реклама:
 
Непрочитано 01.12.2004, 23:38  
xelos
Прописка
 
Регистрация: 27.08.2004
Сообщений: 98
Сказал спасибо: 0
Сказали Спасибо 19 раз(а) в 18 сообщении(ях)
xelos на пути к лучшему
По умолчанию

реализация зависит от языка программирования и от схемы подключения индикаторов.
алгоритм простой разложения на разряды простой на С это выглядит:

Код:
char acp; //здесь переменная из АЦП
int value; //здесь значение конечное
char r1,r2;//два разряда

value=acp*99;
value=value/255; //получили твое число

r1=value/10;
r2=value-r1*10; //получили два разряда

//где-то в программе есть массив преобразования десятичного в семисегментый код, пусть cifra[10]

//пусть Print(n, c) выводит на дисплей n цифру c
Print(1,cifra[r1]);
Print(2,cifra[r2]);
xelos вне форума  
Непрочитано 24.12.2004, 00:44  
vlad
Прохожий
 
Регистрация: 06.02.2004
Сообщений: 7
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
vlad на пути к лучшему
По умолчанию Преобразование двоичного формата в десятичный

;************************************************* *******************
; Binary To BCD Conversion Routine
; This routine converts a 16 Bit binary Number to a 5 Digit

; The 16 bit binary number is input in locations H_byte and
; L_byte with the high byte in H_byte.
; The 5 digit BCD number is returned in R0, R1 and R2 with R0
; containing the MSD in its right most nibble.
;
; Performance :
; Program Memory : 35
; Clock Cycles : 885
;
;
; Program: B16TOBCD.ASM
; Revision Date:
; 1-13-97 Compatibility with MPASMWIN 1.40
;
;************************************************* ******************;
;
count equ 75
temp equ 76
;
H_byte equ 70
L_byte equ 71
R0 equ 72 ; RAM Assignments
R1 equ 73
R2 equ 74

X_D
call B2_BCD

MOVLW 1
XORWF COUNTER,W
BTFSC STATUS,Z
GOTO D_MANY

MOVLW 2
XORWF COUNTER,W
BTFSC STATUS,Z
GOTO D_LITR

MOVLW 3
XORWF COUNTER,W
BTFSC STATUS,Z
GOTO D_PRICE



B2_BCD bcf STATUS,0 ; clear the carry bit
movlw .16
movwf count
clrf R0
clrf R1
clrf R2
loop16 rlf L_byte, F
rlf H_byte, F
rlf R2, F
rlf R1, F
rlf R0, F
;
decfsz count, F
goto adjDEC
RETLW 0
;
adjDEC movlw R2
movwf FSR
call adjBCD
;
movlw R1
movwf FSR
call adjBCD
;
movlw R0
movwf FSR
call adjBCD
;
goto loop16
;
adjBCD movlw 3
addwf 0,W
movwf temp
btfsc temp,3 ; test if result › 7
movwf 0
movlw 30
addwf 0,W
movwf temp
btfsc temp,7 ; test if result › 7
movwf 0 ; save as MSD
RETLW 0
vlad вне форума  
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ПОМОГИТЕ НОВИЧКУ CodeVision coldyn0612 Цифровые сигнальные процессоры 3 19.11.2007 23:25
Помогите новичку Shadow Master Микроконтроллеры, АЦП, память и т.д 30 22.12.2005 16:32
Помогите новичку mcs51 Mrak Делимся опытом 4 29.09.2005 16:48
Помогите новичку kay4yk Информация по радиокомпонентам 0 07.09.2004 18:49


Часовой пояс GMT +4, время: 08:47.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.