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

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

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

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

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

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

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

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

помогите как выполнить преобразование из двоичного
в десятичное
т.е. на входе езмеренное АЦП Pic-ом напряжение 0...ff на
выходе должно получиться 0...99 которое выводиться на 2х
разрядный индикатор. как его преобразовать и потом разложить на разряды с последующим выводом наиндикатор
efachel@bk.ru
Реклама:
 
Непрочитано 02.12.2004, 00:38  
xelos
Прописка
 
Регистрация: 27.08.2004
Сообщений: 107
Сказал спасибо: 0
Сказали Спасибо 20 раз(а) в 20 сообщении(ях)
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, 01: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
Помогите новичку efim_max Делимся опытом 6 04.10.2007 18:26
Помогите новичку Shadow Master Микроконтроллеры, АЦП, память и т.д 30 22.12.2005 16:32
Помогите новичку. Mrak Делимся опытом 4 29.09.2005 16:48
Помогите новичку kay4yk Информация по радиокомпонентам 0 07.09.2004 18:49


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


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot