Hallo allen,
Ik heb voor iemand een alarm systeempje gemaakt, heel simpel allemaal, je kan het aan en afzetten met een sleutel contact en als sensor word gebruik gemaakt van een aantal magneet contacten.
Heeft een week gewerkt, maar nu werkt de sleutel niet meer. Ik heb het signaal eens gemeten wat op de µc komt, en dit is 0V of 5v, afhankelijk van de sleutel positie (wat zo ook zou moeten zijn). De µC kan dus blijkbaar geen 1 meer van een 0 scheiden op die pen?
Na wat prutsen ben ik er achter gekomen dat wanneer ik een extra pull up weerstand plaats dat het wel terug werkt! ???
Kan het zijn dat de inwendige pull up van de µC niet sterk genoeg is?
Voormiddag belde de eigenaar om hetzelfde probleem, terwijl er toch nog die extra pull up weerstand is.
Weet iemand wat er hier aan de hand is?
Het gaat om de 16F628, en als ingang word PORTB <4> gebruikt.
Alvast bedankt
Ojeke
Arco
Special Member
Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Ja, deze staat uit.
De overige functie's doet de µC wel, er is een zone die 24 uur bewaakt is, en deze werkt ook nog steeds.
alvast bedankt
Arco
Special Member
Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Hoi, dit is de code die ik geschreven heb
'****************************************************************
'* Name : Alarm.BAS *
'* Author : Achten Joris, *
'* Notice : Copyright (c) 2009 Joris Achten *
'* : All Rights Reserved *
'* Date : 25/07/2009 *
'* Version : 1.0 *
'* Notes : *
'* : *
'****************************************************************
Device 16F648A ;Gebruik een 16F628A type
Config WDT_OFF, PWRTE_ON, LVP_OFF, MCLRE_OFF, INTRC_OSC_NOCLKOUT
ALL_DIGITAL TRUE ;Alle ingangen digitaal
PORTB_PULLUPS true
TRISB=%00110011
TRISA=%11111111
Symbol LED_groen = PORTB.2
Symbol LED_rood = PORTB.3
Symbol Relais_snel = PORTB.6
Symbol Relais_delay = PORTB.7
Symbol Sleutel = PORTB.4
Symbol Tamper_sleutel = PORTB.5
Symbol ZoneA = PORTA.6
Symbol ZoneB = PORTA.1
Symbol ZoneC = PORTA.0
Symbol zoneD = PORTA.7
Symbol Tamper = PORTB.0
Symbol Reset_knop = PORTB.1
Dim Key_stat As Bit
Dim Alarm As Bit
Dim Traag_alarm As Bit
Dim Waarschuwing As Bit
Dim teller As Word
Dim herhaling As Word
Dim Waarschuwing_time_reset As Word
Clear
DelayMS 40000
Symbol Alarm_tijd = 900 ; seconden
Symbol piep_tijd = 15 ; seconden
begin:
Key_stat = Sleutel
LED_groen = Key_stat
Toggle LED_groen
LED_rood = Key_stat
If Key_stat = 0 Then Waarschuwing = 0
If Waarschuwing_time_reset < 600 Then Inc Waarschuwing_time_reset
If Waarschuwing_time_reset = 600 Then Waarschuwing = 0
If Key_stat = 1 And ZoneB = 1 Then
Alarm = 1
Traag_alarm = 1
EndIf
If Tamper_sleutel = 1 Then Alarm = 1
If Tamper = 1 Then Alarm = 1
If ZoneA = 1 Then Alarm = 1
If ZoneC = 1 Then Alarm = 1
If zoneD = 1 Then Alarm = 1
If Alarm = 1 Then
Relais_snel = 1
If Waarschuwing = 0 Then
Waarschuwing = 1
DelayMS 4000
Waarschuwing_time_reset = 0
If ZoneB = 0 Then
Relais_snel = 0
Alarm = 0
GoTo begin
EndIf
EndIf
If Traag_alarm = 1 Then
Clear teller
For herhaling = 0 To 100
Clear teller
While teller < piep_tijd
If Sleutel = 0 Then
Relais_delay = 0
Relais_snel = 0
Alarm = 0
Traag_alarm = 0
GoTo begin
EndIf
DelayMS 10
Inc teller
Wend
Next
EndIf
Relais_delay = 1
DelayMS 5000
Clear teller
For herhaling = 0 To 100
Clear teller
While teller < Alarm_tijd
If Sleutel = 0 And Reset_knop = 0 Then GoTo overbrugging
DelayMS 10
Inc teller
Wend
Next
EndIf
Relais_delay = 0
Relais_snel = 0
Alarm = 0
Traag_alarm = 0
DelayMS 10
GoTo begin
overbrugging:
LED_rood = 1
LED_groen = 1
Relais_delay = 0
Relais_snel = 0
Alarm = 0
Traag_alarm = 0
Waarschuwing = 0
While Reset_knop = 0:Wend
DelayMS 1000
While Reset_knop = 1 : Wend
GoTo begin
Hallo,
als je PORTB_PULLUPS true vervangt door PORTB_PULLUPS = true
wat doet hij dan?
Als ik PORTB_PULLUPS true in picbasic zet dan staat hij niet links in de declares lijs, maar met PORTB_PULLUPS = true staat hij er wel.
Weet niet of dit werkt aangezien je bij de rest van portb geen problemen hebt.
Dit lijkt me weinig effect te hebben, maar ik zal het eens proberen. Het heeft perfect gewerkt voor een tijdje, dus het lijkt me geen software fout. Kan het zijn dat ik toevallig een slechte µC heb?
MVG
Ojeke
Lucky Luke
Eluke.nl | handgetypt | I'm a poor, lonesome cowboy, with a long, long way to go.
Op 13 augustus 2009 19:44:45 schreef Boeip:
't Probleem is toch verholpen als je een externe pull-up weerstand plaatst? Opgelost lijkt me
zo was het opgelost voor een dag, vandaag weer telefoon gehad dat het weer niet werkte, nog niet gaan kijken, maar de symptomen. zijn hetzelfde.
Op 13 augustus 2009 19:45:52 schreef Lucky luke:
Zit die uC soms in een voetje? (En zit net die ene pin los?)
zit in een voet ja, moet ik eens goed naar kijken.
Op 13 augustus 2009 21:09:17 schreef ojeke:
zit in een voet ja, moet ik eens goed naar kijken.
Als het zo'n goedkoop voetje met veertjes is, dan beter voetje weggooien en solderen of een voetje met gedraaide gouden contactjes nemen:
Frits Kieftenbelt
Ohm sweet Ohm | www.picbasic.nl
Hoi,
Ben momenteel op vakantie, maar als ik terug ben ga ik het allemaal eens proberen.
Alvast bedankt
